CentOS6.5下python版本的protobuf编译及安装

因为要学习faster r-cnn,在搭建环境的时,发现原本通过yum安装的protobuf没有安装python版本以及其他一系列版本版本兼容性问题,导致我必须用编译方式重新安装protobuf2.5

下载源码

首先,从github上下载protobuf的源码,地址:https://github.com/google/protobuf,我选择下载2.5.0版本。

编译protobuf

然后将下载的压缩包解压缩

unzip protobuf-2.5.0.zip

按照网上教程,应该执行./configure了,但是根目录下居然没有configure文件,却有一个autogen.sh,原来是因为protobuf的编译方式做了修改,要执行autogen.sh才会生成configure脚本。

但在执行autogen.sh时出错了,因为google.com被墙了,我的虚拟机里无法下载gtest,于是手动下载googletest-release-1.5.0.zip,解压缩后,改名为gtest放在protobuf-2.5.0目录下
这里写图片描述

autogen.sh代码片段

# Check that gtest is present.  Usually it is already there since the
# directory is set up as an SVN external.
# 判断是否存在gtest目录
if test ! -e gtest; then
  echo "Google Test not present.  Fetching gtest-1.5.0 from the web..."
  #如果目录不存在则尝试从google.com下载并解压缩,如果google被墙则下载失败
  curl http://googletest.googlecode.com/files/gtest-1.5.0.tar.bz2 | tar jx
  #将解压缩后的目录改名为gtest
  mv gtest-1.5.0 gtest
fi

googletest1.5.0下载地址:https://github.com/google/googletest/tree/release-1.5.0

#解压缩
unzip gtest-1.5.0.zip  
mv gtest-1.5.0 gtest  

执行protobuf编译

#执行autogen.sh生成configure
./autogen.sh  
./configure
# -j8 多线程编译
make -j8
make check
# 安装编译成功的protobuf
sudo make install

安装python模块

cd python 
python setup.py build 
python setup.py test 
python setup.py install

验证Python模块

验证Python模块是否被正确安装
如果没有报错,说明安装正常。

$ python 
>>> import google.protobuf.internal
>>> 

参考:
http://www.cnblogs.com/chegnshi-coding/p/4457738.html
http://blog.csdn.net/wutbiao/article/details/45029779

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

10km

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值