文章记录了交叉编译google protobuf 的整个过程。
build 环境:
OS/hardware-platform : Linux ubuntu 3.2.0-32-generic-pae #51-Ubuntu SMP Wed Sep 26 21:54:23 UTC 2012 i686 i686 i386 GNU/Linux
CROSS_COMPILER : gcc version 4.3.2 (Sourcery G++ Lite 2008q3-72) 【已经设置了PATH 】
Target 环境:
OS/hardware-platform : Linux at91.linux 2.6.30 #2 Wed Oct 10 23:33:55 CST 2012 armv5tejl GNU/Linux
1. 从官网下载最新的 protobuf, https://code.google.com/p/protobuf/downloads/list ,目前最新的是 2.4.1
tar -xvjf protobuf-2.4.1.tar.bz2
【tar tips: 首个字符 x 是必须的 , 代表解压; v 代表 verbose, 代表输出所有解压文件信息 ; j 代表 bzip2 ,即 bz2格式, 有时候也用z, z代表 gzip ; f 代表使用的是归档文件 】
2 . build protobuf , 有以下需要注意的地方:
<1> protobuf 中的 README.txt 提到了在交叉编译 protobuf 时需要加上选项 --with-protoc , 例如, 如果在本地已经安装过 protobuf, 则 configure 的配置选项:
./configure --with-protoc=protoc 【。。。。。。。。。其他配置选项】
需要注意的是 protoc 的版本必须要当前protobuf版本一致。