【linux 问题】error while loading shared libraries错误解决,网络配置

01 error while loading shared libraries错误解决

出现这个问题常常是自己写的.so文件,然后代码用的时候可以编译成功,但是运行的话会出现error while loading shared libraries错误解决
Linux 运行的时候,共享库的寻找和加载是由 /lib/ld.so 实现的。ld.so 在标准路经(/) 中寻找应用程序用到的共享库。

但是,如果需要用到的共享库在非标准路经中,比如我们自己写的动态库。这时候我们需要修改配置,将我们*.so的路径写入配置中:
一:永久的解决方法
步骤如下:
(1)打开 ld.so.conf 文件

[root@localhost /]# vi /etc/ld.so.conf

(2)在下面加入我们写的非标准的动态共享库路径,(加入自己所写的 xxxx.so 路径。我写的一般都放在我cz用户的lib文件下)
在这里插入图片描述
(3)保存过后ldconfig一下,新的library才能在程序运行时被找到。

[root@localhost /]# ldconfig

二、临时性方法
每次在 ./ (运行)之前 在命令行输入:

[root@localhost /]#  export LD_LIBRARY_PATH=/usr/local/mysql/lib:$LD_LIBRARY_PATH 

02 linux 网络配置

写这个博客时我出现的问题是:
在linux下可以ping通外网,也可以ping通自己的主机。但是 yum/wget指令皆是执行时间很长,大多数时候是执行阻塞,失败。手动重装yum源,配置wget 都无效。后来发现是网络配置问题。
如果出现问题,不怎么会改,可以直接复制我的。

步骤如下:
(1)打开linux 网络设置页面
在这里插入图片描述
(2)配置 IPV4
在这里插入图片描述
在这里插入图片描述
点击应用,最后返回最初页面 重新打开一次网络连接开关
在这里插入图片描述

当在Linux上运行程序时,如果遇到以下错误之一: ``` error while loading shared libraries: <library_name>: cannot open shared object file: No such file or directory ``` 或者 ``` error while loading shared libraries: <library_name>: cannot open shared object file: Permission denied ``` 这通常表示程序依赖的共享库文件无法被找到或者无法被访问。这可能是由于以下原因之一导致的: 1. 共享库文件不存在:检查程序所依赖的共享库文件是否存在于系统中。确保它们已正确安装或位于正确的路径下。 2. 共享库路径问题:检查LD_LIBRARY_PATH环境变量是否设置正确。LD_LIBRARY_PATH指定了动态链接器在运行时查找共享库文件的搜索路径。确保共享库文件所在的路径在LD_LIBRARY_PATH中,或者将共享库文件复制到默认的搜索路径(例如/lib、/usr/lib等)下。 3. 缺少库依赖关系:共享库可能依赖其他库文件。如果缺少了这些依赖关系的库文件,那么程序运行时会出现错误。通过使用`ldd`命令查看程序依赖的共享库,并确保这些依赖库已正确安装。 4. 权限问题:如果您没有适当的权限来访问或执行共享库文件,那么会出现"Permission denied"错误。确保您对共享库文件具有足够的权限。 5. 32位/64位不匹配:如果程序和共享库之间的位数不匹配(例如,程序为32位而共享库为64位),也会导致加载共享库失败。确保程序和共享库是兼容的。 通过检查以上问题,您应该能够解决Linux上加载共享库时出现的错误
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

努力做一个code杠精

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

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

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

打赏作者

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

抵扣说明:

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

余额充值