您的位置:首页 > 运维架构 > Linux

linux 安装protobuf2.5

2015-07-28 15:16 651 查看
2.5.0版本protobuf安装成功(下载地址:https://github.com/google/protobuf/releases/download/v2.5.0/protobuf-2.5.0.tar.gz)

注:以下全部在root下执行

1.安装

 tar -xzf protobuf-2.5.0.tar.gz 

 cd protobuf-2.5.0 

 ./configure --prefix=/usr/local/protobuf

 make 

 make check 
 make install

接下来执行: $protoc --version

显示 libprotoc 2.5.0表示成功了

2.环境

a.

vim /etc/profile

 添加

export PATH=$PATH:/usr/local/protobuf/bin/

export PKG_CONFIG_PATH=/usr/local/protobuf/lib/pkgconfig/

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/protobuf/lib

保存执行

source /etc/profile
vim ~/.profile

 添加

export PATH=$PATH:/usr/local/protobuf/bin/

export PKG_CONFIG_PATH=/usr/local/protobuf/lib/pkgconfig/

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/protobuf/lib

保存执行

source ~/.profile

b.
vim /etc/ld.so.conf

 添加:

/usr
4000
/local/protobuf/lib

保存执行

ldconfig

c.
执行  export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH

3.
cd 到*.proto文件目录下
执行 protoc -I=. --cpp_out=. *.proto
生成*.pb.cc *.pb.h文件
执行 g++ *.pb.cc 源文件名.cpp -o 程序名 `pkg-config --cflags --libs protobuf` -lpthread
生成程序文件
chmod +x 程序名
./程序名

4.程序移动到其它没装protobuf系统中运行会报错:
 error while loading shared libraries: libprotobuf.so.8: cannot open shared object file: No such file or directory
解决:
复制libprotobuf.so.8文件到程序目录(在生成程序的目录下执行:ldd 程序名可以找到该库的位置)
执行 export LD_LIBRARY_PATH=程序所在目录:$LD_LIBRARY_PATH

或者
libprotobuf.so.8文件复制到/usr/local/lib(很多开源的共享库都会安装到该目录下)
vim /etc/ld.so.conf

增加

/usr/local/lib

保存退出

执行ldconfig
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: