解决gcc环境下程序执行时动态库无法被加载的问题

本文记录了如何解决程序执行时动态库无法被加载的问题,在gcc环境下运行包含调用动态库的程序出现问题

:error while loading shared libraries:**.so:cannot open shared objected file.no such file of directory.

  1. 解决办法1(临时)

将当前库文件路径导入到环境变量LD_LIBRARY_PATH中,然后再查看文件依赖的库,解决了问题(只是临时导入,关闭了终端后需要在进入重新设置)。
在这里插入图片描述

  1. 解决方法2

在home目录下的隐藏文件.bashrc最后一行加上#export LD_LIBRARY_PATH=/home/hyj/桌面/gcc/lib

在这里插入图片描述
在这里插入图片描述

  1. 方法3(重点):

(a)找到动态连接器的配置文件
在这里插入图片描述
(b)动态库的路径写到配置文件中
在这里插入图片描述
©更新 sudo ldconfig –v
在这里插入图片描述
在这里插入图片描述

总结: 动态库的优缺点

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值