Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
链接库时,使用-rpath 将动态库的地址传递给ld。我的问题是,如果我在 LD_LIBRARY_PATH 中设置地址,我的链接过程中还需要 -rpath 标志吗?
通常,您不需要它,实际上最好不要在可执行文件中编码库搜索路径(该-rpath选项将二进制文件中的路径编码为DT_RPATH或DR_RUNPATH)
-rpath
DT_RPATH
DR_RUNPATH
PS。我自己的一般方法是将可执行文件与选项链接,--rpath而它们在构建树中并依赖于构建树中的其他库,以方便调试,但在安装(make install,构建包)时重新链接没有 --rpath选项并离开任务找到共享库到ld.so.conf目标平台的适当动态链接器配置(例如)。
--rpath
make install
ld.so.conf