我想全局更改LD_LIBRARY_PATH变量,使用一些奇怪的第三方SDK,它将其共享库放在自定义目录中。所以,我将这样的脚本添加到/etc/profile.d:
LD_LIBRARY_PATH=/usr/local/ebus_sdk/lib/genicam/bin/Linux64_x64:/usr/local/ebus_sdk/lib/qt/lib:/usr/local/ebus_sdk/lib:$LD_LIBRARY_PATH export LD_LIBRARY_PATH
重启后,我在命令行中输入:
alex@alex-64:~$ echo $LD_LIBRARY_PATH .
所以,这种方式不起作用。有没有其他方法可以将这些目录添加到库搜索路径?
答案 0 :(得分:3)
尝试将两行放在一行:
export LD_LIBRARY_PATH=/usr/local/ebus_sdk/lib/genicam/bin/Linux64_x64:/usr/local/ebus_sdk/lib/qt/lib:/usr/local/ebus_sdk/lib:$LD_LIBRARY_PATH
修改的:
检查某些配置文件是否不会覆盖LD_LIBRARY_PATH
。典型的候选人是~/.profile
或~/.bashrc
(或适合您的shell类型)。
答案 1 :(得分:1)
大多数Linux发行版都会将文件添加到/etc/ld.so.conf.d
目录,其中包含搜索库的路径。这是安装程序(如rpm
和dpkg
)安装和卸载程序包系统更改的便捷方式。