linux找不到动态链接库.so文件的解决方法
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
linux找不到动态链接库.so⽂件的解决⽅法
如果使⽤⾃⼰⼿动⽣成的动态链接库.so⽂件,但是这个.so⽂件,没有加⼊库⽂件搜索路劲中,程序运⾏时可能会出现找不到动态链接库的情形。
可以通过ldd命名来查看可执⾏⽂件依赖的动态链接库,如下(其中D为可执⾏程序):
其中的libjson_linux-gcc-4.6_libmt.so cannot found。
解决这个问题:
(1)在系统中查找这个⽂件(当然要保证系统中已经有这个.so⽂件,只是查找路径没有设置正确⽽已):
sudo find / -name libjson_linux-gcc-4.6_libmt.so
结果:/home/liu/Desktop/jsoncpp-src-0.5.0/libs/linux-gcc-4.6/libjson_linux-gcc-4.6_libmt.so
(2)将.so⽂件路径的⽬录添加到/etc/ld.so.conf
sudo vim /etc/ld.so.conf
⽂件末尾新添加⼀⾏,/home/liu/Desktop/jsoncpp-src-0.5.0/libs/linux-gcc-4.6
(3)使得修改⽣效
sudo /sbin/ldconfig
这样就不会有那个找不对.so⽂件的错误啦。