[服务应用] 出现error while loading shared libraries的处理方法

默认情况下,系统只会使用/lib和/usr/lib这两个目录下的库文件,通常通过源码包进行安装时,如果没有指定,会将库安装在/usr/local/lib目录下当运行程序需要链接动态库时,提示找不到相关的.so库,会提示报错。那么就需要将不在默认库目录中的目录添加到配置文件中去。
1.打开/etc/ld.so.conf配置文件
vim /etc/ld.so.conf
2.添加库文件所在的目录
如:/usr/lib64
3.保存修改后,执行:/sbin/ldconfig -v
其作用是将文件/etc/ld.so.conf列出的路径下的库文件缓存到/etc/ld.so.cache以供使用,因此当安装完一些库文件,或者修改/etc/ld.so.conf增加了库的新搜索路径,需要运行一下ldconfig,使所有的库文件都被缓存到文件/etc/ld.so.cache中,如果没做,可能会找不到刚安装的库。

如果进行这几步处理后,出现了error while loading shared libraries:...:permission denied
需要确认一下是不是当前用户在库目录下是不是没有可读的权限。
将提示中显示的文件权限进行修改,添加可读权限,随后报错解除

Guess you like

Origin blog.csdn.net/m0_61458430/article/details/120322877