【LInux】找不到动态链接库文件的问题

安装了 libevent,程序运行时出现了错误提示:

error while loading shared libraries: libevent-2.0.so.5

问题很明显,系统没能找到 libevent 的动态链接库文件

原因在于 libevent 没有安装在系统存放动态链接库的目录中,当然,也就有两种方式可以解决,一种是通过查找相应的目录和对应的环境变量,将目录加入系统环境变量中即可

定位问题

通过执行 ldd 命令可以看到程序究竟调用了哪些动态链接库,哪些无法找到

ldd main

 

可见只有 libevent-2.0.so.5 没有找到

定位 libevent-2.0.so.5

whereis libevent-2.0.so.5

 

他在 /usr/local/lib 目录下

定位系统目录

定位系统动态链接库的目录一个方法是通过环境变量来查找,然而,更简单的方法是直接看我们的程序到哪个目录去找他了

 LD_DEBUG=libs ./main -v

从输出中我们可以看到路径 /usr/lib

因此,我们进入这个目录执行: sudo ln -s /usr/local/lib/libevent-2.0.so.5 .

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值