加载动态库,以下方法,一般用于处理cannot open shared object file: No such file or directory。
方法一:
/etc/ld.so.conf 此文件记录了编译时使用的动态库的路径,也就是加载so库的路径。
ldconfig是一个动态链接库管理命令,其目的为了让动态链接库为系统所共享。
ldconfig的主要用途:
默认搜寻/lilb和/usr/lib,以及配置文件/etc/ld.so.conf内所列的目录下的库文件。
搜索出可共享的动态链接库,库文件的格式为:lib***.so.**,进而创建出动态装入程序(ld.so)所需的连接和缓存文件。
缓存文件默认为/etc/ld.so.cache,该文件保存已排好序的动态链接库名字列表。
ldconfig通常在系统启动时运行,而当用户安装了一个新的动态链接库时,就需要手工运行这个命令。
[root@localhost ~]# cat /etc/ld.so.conf
include ld.so.conf.d/*.conf
/usr/local/lib
/usr/local/lib64
[root@localhost ~]# sudo ldconfig
[root@localhost ~]#
方法二:
增加如下命令到/etc/profile或者.bashrc或者/etc/bashrc
export LD_LIBRARY_PATH=/usr/local/lib:${LD_LIBRARY_PATH}
/etc/profile文件记录了系统环境变量相关。
.bashrc文件主要保存个人的一些个性化设置,如命令别名、路径等。