解决error while loading shared libraries: liblog4cpp.so.5: cannot open shared object file: No such file or directory
尝试加载共享库 liblog4cpp.so.5
时失败,因为系统无法找到这个文件。
原因:
库文件未安装、路径不正确或环境变量配置有误导致的。
这里的项目我是在vs下编辑 ,远程链接到linux下执行的, 虽然我在项目中已经指定了库目录的路径,但是由于vs对linux的支持没有那么的强 , 导致我们在linux下运行程序的时候 ,还是出现了上面的错误.
解决方案:
手动设置动态库的路径
找到liblog4cpp.so.5所在的路径,如果没有可能没有安装log4cpp , 如果在安装的时候没有指定路径,默认在 **/user/locat/lib/**下面.
我安装过两次 , 所以出现的路径有几个,只要一个就可以了 .( liblog4cpp.so.5 上一级目录就可以了 )
方法1. 建议用这个方法
编辑 .bashrc文件
在尾部追加 ( shift + g 到达文件尾部)
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/only/projects/SharedBike/third/lib/log4cpp/
/*
/home/only/projects/SharedBike/third/lib/log4cpp/---> 替换成自己的路径
wq! // 保存
*/
方法2.
在sudo权限下/etc/ld.so.conf
文件最后新增一行动态库路径
/home/only/projects/SharedBike/third/lib/
最后sudo ldconfig,更新库缓存.
查看是否成功: ldd + 可执行文件
希望对你有所帮助.