protobuf報錯解決:error while loading shared libraries: libprotobuf.so.8: cannot open

運行protobuf程序碰見一個小錯誤,記錄一下:

error while loading shared libraries: libprotobuf.so.8: cannot open shared object file: No such file

找不到對應的庫文件,一般是路徑問題。安裝路徑沒有加入到配置中所以報錯。

通過find查找,找到 libprotobuf.so.8 文件,如果沒有找到,那麼需要裝protobuf(參見文章最後)。

確認,是否創建了ld指向文件 /etc/ld.so.conf.d/libprotobuf.conf ,內容如下:(然後,需要執行:sudo ldconfig 命令)

/usr/local/lib

確認,是否配置了LD路徑(最好,寫到/etc/profile中,還需要執行source;或者直接執行export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH,臨時使用):

LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH

 

 

附錄:安裝protobuf:

如果,機器上沒有編譯安裝protobuf,老老實實編譯安裝:

1、下載 protobuf-2.5.0.tar.gz

百度搜下protobuf-2.5.0.tar.gz,CSDN沒法上傳文件,或者聯繫我。

2、編譯

$tar -zxvf protobuf-2.5.0.tar.gz
$cd protobuf-2.5.0
$./configure
$sudo make
$sudo make check
$sudo make install

3、配置LD_LIBRARY_PATH

新建/etc/ld.so.conf.d/libprotobuf.conf (vim /etc/ld.so.conf.d/libprotobuf.conf ),內容如下:

/usr/local/lib

然後,需要執行命令

sudo ldconfig

添加路徑

# vim /etc/profile
LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH

# source /etc/profile

完。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章