我正在用 fortran 编写一个需要特定的非标准库的应用程序。我已经下载了库的源代码并对其进行了编译以获取 $HOME 子目录中的 .so 文件。现在,为了让我编写的应用程序可以使用这个库,我遇到了一种流行的方法:将文件添加到包含库路径的 /etc/ld.conf.so.d 中。其次是ldconfig。
问题是我没有root访问权限。即使我有,我也不确定是否有必要(或安全)对一个只有我需要使用的库进行管理更改。有没有一种不需要root访问权限的方法?
最好的方法是-Wl,-rpath=/home/you/yourlibrary/dir
在链接使用该库的应用程序时添加。
这比设置要好LD_LIBRARY_PATH
,因为它只影响您构建的应用程序(并且只影响使用库的应用程序),而不是您运行的每个应用程序。
绝对最好的选择是设置环境变量 LD_LIBRARY_PATH:
使用“ ldd ”查看正在使用哪些库