google-protobuf安装详解

前言html

编译调试项目的过程当中涉及到caffe的编译,提示没有安装protobuf的错误,本文详解protobuf的安装;linux

问题描述git

解决步骤github

1.查看google protobuf的github,没有直接使用release而是对源码按照readme文件进行了编译;curl

protobuf须要一些依赖库,须要先进行安装;工具

$ sudo apt-get install autoconf automake libtool curl make g++ unzip

出现问题网站

注意,红框中的内容表示当前系统的sources.list中没有该库的源连接(目录在/etc/apt/sources.list),但并不表示当前系统没有安装该库;ui

不过,博主的当前系统的确是没有安装该库;google

2.安装curl依赖库,参考here,不过最后的步骤改成如下命令则可正确安装;url

sudo make install

 3. 按照protobuf的readme操做运行如下命令出错;

$ ./autogen.sh

错误以下

说明缺乏gmock这个依赖库;

4.安装gmock依赖库,可参考here

5.安装以后按照readme的步骤进行编译便可;

$ ./configure $ make $ make check $ sudo make install $ sudo ldconfig # refresh shared library cache.

注意,依赖库的版本须要与项目须要的版本一致,故注意依赖库的版本;

博主在解决这个问题的过程当中编译完成的是当前protobuf的最新版本3.5.1,后来发现项目使用的是2.6.0或者2.6.1版本的;

 linux系统安装依赖库的方法

如何安装各类依赖库或者工具包;
1)直接使用apt-get install进行安装,这样可以正确安装的前提是系统中有源连接的文件,在/etc/apt/source.list文件中;
2)直接在github或者官网上找到包的源码,本身按照必定的步骤进行编译,须要注意的问题是版本是否一致;
3)一种是直接在相关网站上找到对应系统的包的release版本,使用sudo dpkg -I filename进行安装,

这个须要注意的是安装的包自己可能须要多个依赖项,须要将所有的依赖项都下载下来进行安装,

同时也须要注意包的版本是否匹配,另外,网站上的依赖包可能会有坏的,须要检查一下是否正确安装依赖项,

不能只查看文件,文件存在不必定正确安装,有可能只是一个空的连接,切记切记!!!!!

另外,咱们使用的板子是ARM板子,故选择的包是arm64的,同时系统版本的codename是Xenial的,选择包的版本的时候须要注意。
使用lsb_release -a命令行能够查看系统的版本属性等;
通常含有箭头的文件可能就是某个连接,没有正确安装;

参考

1.google protobuf github

2.依赖库curl的安装1

3.curl的安装-百度

4.IT大道-protobuf的安装

5.gmock-protobuf的安装

相关文章
相关标签/搜索