如何让linux加载当前目录的动态库?

如何让linux加载当前目录的动态库?,第1张

linux 加载当前目录的动态库的方法是:设置合适的环境变量LD_LIBRARY_PATH。

设置方法有以下三种:

1、临时修改,log out之后就失效

在terminal中执行:export LD_LIBRARY_PATH=./

2、让当前帐号以后都优先加载当前目录的动态库

修改~/.bash_profile在文件末尾加上两行: LD_LIBRARY_PATH=./ 和 export LD_LIBRARY_PATH

3、让所有帐号从此都优先加载当前目录的动态库

修改/etc/profile在文件末尾加上两行: LD_LIBRARY_PATH=./ 和 export LD_LIBRARY_PATH

如何让自己的动态链接库文件能够在linux下被调用

VxWorks

安装的DVD有很多自己的动态链接库文件,在启动一些服务的时候需要调用这些动态链接库文件,否则不能启动一些功能,report:找不到相关的库文件。

解决的方法可以有多种:

1.

直接创建软连接的方式,将某动态链接库文件链接到

/lib

或者/usr/lib

下。

ln

-s

`pwd`/xxx.so

/lib/xxx.so

这种方式适合少数固定不变动态链接库文件的调用,但如果文件很多,或者这些文件也是经常存在更新的,这么多比较繁琐。

2.

如果直接把动态链接库文件所在的路径直接加到系统查找库的路径下,这里有两种方式:

1)

更改/etc/ld.so.conf,

加入自己的动态链接库路径,好像需要更新/etc/ld.so.cache

该方法应该可用,没有尝试过。

2)

更改环境变量LD_LIBRARY_PATH,把自己的动态链接库路径,加入到该环境变量中。

export

LD_LIBRARY_PATH=/Jenkins/workspace/Mefa_Nightly_regression_Job02/MAIN/mefa_platform/logs_1st_round/mefaImage/simulatorTools:$LD_LIBRARY_PATH

在该环境变量中的动态链接库文件会比系统中/lib

或者

/usr/lib

更早调用。

linux重启之后,该环境变量会失效;

这种方式更适合自动化的测试的需要。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/yw/9014685.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-24
下一篇 2023-04-24

发表评论

登录后才能评论

评论列表(0条)

保存