1 下載PRotobuf
https://github.com/google/protobuf/releases/download/v2.6.1/protobuf-2.6.1.tar.gz
2 進入下載文件的目錄
1 tar -zxvf protobuf-2.6.1.tar.gz2 cd protobuf-2.6.1/3 ./configure4 make5 make check6 sudo make install
我在執行./configure時出現如下問題
Ubuntu: configure error: C++ preprocessor "/lib/cpp" fails sanity check
解決辦法
sudo apt-get install build-essential
3 檢查是否安裝成功
protoc --version
如果安裝成功,會出現版本號 如
libprotoc 2.6.1
如果有問題,會輸出錯誤內容
最后我安裝完成,用上述命令檢查版本號時出現如下問題
protoc: error while loading shared libraries: libprotocbuf.so.9: cannot open shared
錯誤原因
protobuf的默認安裝路徑是/usr/local/lib,而/usr/local/lib不在ubuntu體系默認的LD_LIBRARY_PATH里,所以就找不到lib
解決辦法
1 在 /etc/ld.so.conf.d/目錄下創建文件 bprotobuf.conf文件,文件內容如下
/usr/local/lib
2 輸入命令
sudo ldconfig
這時,再輸入protoc --version就可以正常看到版本號了
關于/etc/ld.so.conf.d/的了解請參考下面這篇文章的說明
http://blog.csdn.net/apn172/article/details/8868968
http://blog.csdn.net/yjkwf/article/details/7545002
新聞熱點
疑難解答