专栏首页10km的专栏CentOS6.5下python版本的protobuf编译及安装

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

版权声明:本文为博主原创文章,转载请注明源地址。 https://blog.csdn.net/10km/article/details/53023527

因为要学习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

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • zookeeper入门

    Apache ZooKeeper是Apache软件基金会的一个软件项目,他为大型分布式计算提供开源的分布式配置服务、同步服务和命名注册。ZooKeeper曾经是...

    LiosWong
  • 0614-5.16.1-同一OS用户并行Shell脚本中kinit不同的Principal串掉问题分析

    在前面的文章《CDH5.15.0-同一OS用户下不同Kerberos用户执行脚本Principal串掉问题分析》中Fayson主要介绍了同一个OS用户下并发调度...

    Fayson
  • iOS实现代码混淆

    从事iOS开发几年了,从未对代码加密加固,总是认为iOS APP一般是通过AppStore发布的,况且苹果的系统又很难攻破,根本就无需加密,但使用class-d...

    honey缘木鱼
  • CV环境很重要!!各种环境搭建大全

    二月已经不知不觉过去了一大半,新年的开工部分同学估计也过去一周了吧。下周二貌似元宵节,在此“计算机视觉战队”祝大家元宵节快乐,接下来的”猪“年财源滚滚、科研硕果...

    计算机视觉战队
  • 谷歌揭示了新的增强现实动画背后的AI技术

    像YouTube Stories这样的应用程序可以在人脸上叠加动画面具,眼镜和帽子,但它们究竟是如何做到如此真实的?谷歌AI研究部发布的深度研究,使它不再那么神...

    AiTechYun
  • 漫画:啥是神经网络?

    至今为止,我们仍然没有完全了解人类的大脑是如何运作的。由目前我们的认知来看,大脑本身并非一开始就有惊人的记忆力、计算力、识别力,一般认为,大脑是由数量庞大,可能...

    挖数
  • 基于 HTML5 WebGL 的 3D 渲染引擎构建工厂运作系统 顶

    今天为大家带来一个很酷的作品,依然运用了强大的 HT for Web 的 3D 图形组件,动作流畅性能好,大家可以先来欣赏一下效果!

    HT_hightopo
  • 业务巡检-系统巡检该怎么做

    系统巡检是对于服务巡检的第一站,所以在这里我们要做好第一班岗,如果系统巡检稀里糊涂,那么后续的数据库服务巡检效果也会大打折扣。

    jeanron100
  • iOS离屏渲染

    有时候面试偶尔会有面试官问你什么是离屏渲染?什么情况下会触发?该如何应对?接下面一一讲解。

    赵哥窟
  • MAC:本地服务器

    回车会提示输入密码,也就是你电脑的密码,http://127.0.0.1/测试一下,成功则如下图:

    菜菜不吃蔡

扫码关注云+社区

领取腾讯云代金券