error while loading shared libraries

15 篇文章 0 订阅
本文介绍了在调试Log4cplus示例时遇到的找不到库问题,提供了三种解决方案:临时设置LD_LIBRARY_PATH、修改ld.so.conf文件以及在QtCreator工程文件中添加库路径。
摘要由CSDN通过智能技术生成

调试log4cplus示例时,运行时找不到库

log4/log4cpp$ g++ main.cpp -o test -llog4cplus -L/usr/local/lib
log4/log4cpp$ ./test 
./test: error while loading shared libraries: liblog4cplus-2.0.so.3: cannot open shared object file: No such file or directory

首先确保库存在

log4/log4cpp$ whereis liblog4cplus-2.0.so.3
liblog4cplus-2.0.so: /usr/local/lib/liblog4cplus-2.0.so.3
方法一:在终端设置库链接路径

缺点:只能在此终端有效,开另一个终端LD_LIBRARY_PATH又恢复原来的值

log4/log4cpp$ export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
log4/log4cpp$ echo $LD_LIBRARY_PATH
/usr/local/lib:
log4/log4cpp$ ./test 
WARN - Hello, World!
方法二:修改/etc/ld.so.conf文件

将/usr/local/lib添加在etc/ld.so.conf 后面

优点:后续的终端都有效

log4/log4cpp$ ./test 
./test: error while loading shared libraries: liblog4cplus-2.0.so.3: cannot open shared object file: No such file or directory
log4/log4cpp$ sudo vi /etc/ld.so.conf
修改为 include /etc/ld.so.conf.d/*.conf /usr/local/lib
log4/log4cpp$ sudo ldconfig
log4/log4cpp$ ./test 
WARN - Hello, World!
方法三:在QtCreator工程文件中修改

添加下面语句

LIBS    += -llog4cplus -L/usr/local/lib/

再ctrl+B 编译,F5运行 

  • 6
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值