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的安裝

相關文章
相關標籤/搜索