链接库时,-rpath用于将动态库的地址传递给ld。我的问题是如果我在LD_LIBRARY_PATH中设置地址,我的链接中是否还需要-rpath标志 过程
答案 0 :(得分:2)
通常,您不需要它,实际上最好不要在可执行文件中编码库搜索路径(-rpath
选项将二进制文件中的路径编码为DT_RPATH
或DR_RUNPATH
)
PS。我自己的一般方法是将可执行文件与 --rpath
选项链接起来,而它们在构建树中并依赖于构建树中的其他库,以便于调试,但是在安装时({{ 1}},构建包)重新链接而不用 make install
选项,并将查找共享库的任务留给相应的动态链接器配置(例如--rpath
)目标平台。