如何在Linux环境下在CodeBlock中安装使用Google Protobuf


之前在VS中使用过protobuf,windows情况下还是相对熟悉些,配置起来也快些。现在需要对项目进行移植到linux上,所以需要再配置下protobuff,方法如下:

1.下载protobuff,我下的是2.3.0版本

最新的protobuf可以到Google Code上下载:http://code.google.com/p/protobuf/downloads/list

2.解压和安装操作:

protobuf-2.3.0.tar.gz

tar -zxvf protobuf-2.3.0.tar.gz

cd protobuf-2.3.0

sudo ./configure  --prefix=/usr

对于2.2版本的好像不需要这个prefix参数也行,但对于2.2以下的版本,如果不设置这个参数,protobuf的include 和  lib 会安装到/usr/local下去,导致protoc找不到依赖的.so库,error while loading shared libraries: libprotobuf.so.2: cannot open shared object file: No such file or directory。需要重新设置环境变量。有了这个参数后就可以一步到位,比较方便。

sudo make

sudo make check

sudo make install

protoc --version 可以看到版本号,说明安装成功。

3.message文件生成.cc 和其头文件.h

比如需要将包含message信息的名为search.proto转化为search.pb.cc 和search.pb.h。

cd /temp/message

protoc --cpp_out=. search.proto

.表示当前目录,cpp_out表示生成cpp文件,可以通过protoc --help查看参数那么就会在当前目录下生成myMessage.pb.cc和myMessage.pb.h两个文件也就是我们需要的,拷贝到相应的工程目录就可以使用myMessage对应的一些函数。

4.设置包含的include文件和lib目录

project->build option->link setting->add

protobuf

一般这样就可以完整地使用protobuf了,一些额外的头文件和库,可以在search directories里面设置。

相关内容