Linux找不到动态链接库 .so文件的解决方法

Linux找不到动态链接库 .so文件的解决方法


环境: Ubuntu

前提是 本地主机上存在需要的动态库,这个库可能是自己编译的,也可能是存放位置本身没放在环境变量

定位软件依赖库 使用 ldd 命令:
在此之前需要 找到对应的库;可使用 find 命令:
sudo find / -name libxxxxx.so

第一种

使用环境变量LD_LIBRARY_PATH
将动态库的绝对路劲添加到该环境变量中

1、LD_LIBRARY_PATH = /usr/include/xxxx:$LD_LIBRARY_PATH
(这个是追加的)
不能使用 LD_LIBRARY_PATH = /usr/include/xxxx
(这个是全部覆盖,之前的PATH内容就会丢失)
2、export LD_LIBRARY_PATH
如果直接在shell中执行 —就是 临时设置 推荐使用写入配置文件
写入配置文件

3、执行两个命令
~/.bashrc -用户级别 (临时作用,关闭终端就没有用)
/etc/prefile -系统级别
(直接添加到末尾就行)
在这里插入图片描述

第二种

都是针对文件来说
1、给动态库设置软连接/usr/kevin/fastdfs (源so文件路径)
2、将软链接放到 /usr/lib /usr/lib64 /lib /lib64
3、sudo In -s /usr/kevin/fastdfs/xxx.so /usr/lib/libXXX.SO

第三种

刷新/etc/ld.so.cache
1、首先ⅵm /etc/ld.so.conf
动态库的绝对路径写入该文件中
[里面不管那个include的内容,直接添加就行,那些引入的;
/usr/lib 是我添加的]
在这里插入图片描述
ld.so.conf如上图
/etc/include/ld.so.conf.d/libc.conf 内容如下图
在这里插入图片描述
2、sudo ldconfig -v
作用就是使其配置生效

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

太阳风暴

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值