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

完。

 

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