【问题标题】:what is the difference between LD_LIBRARY_PATH and -rpathLD_LIBRARY_PATH 和 -rpath 有什么区别
【发布时间】:2012-11-17 00:23:27
【问题描述】:

链接库时,使用-rpath将动态库的地址传递给ld。我的问题是如果我在 LD_LIBRARY_PATH 中设置地址,我的链接中是否还需要 -rpath 标志 过程?

【问题讨论】:

    标签: g++ linker-scripts


    【解决方案1】:

    通常,您不需要它,实际上最好不要在可执行文件中编码库搜索路径(-rpath 选项将二进制文件中的路径编码为DT_RPATHDR_RUNPATH

    PS。我自己的一般方法是将可执行文件 --rpath 选项链接,而它们在构建树中并依赖于构建树中的其他库,以方便调试,但在安装时(make install,构建包)以重新链接不带 --rpath 选项,并将查找共享库的任务留给目标平台的适当动态链接器配置(例如ld.so.conf)。

    【讨论】:

    • 你如何使用 automake 来完成这项工作?
    猜你喜欢
    • 1970-01-01
    • 2013-01-20
    • 2012-01-18
    • 2010-12-26
    • 1970-01-01
    • 1970-01-01
    • 2015-03-12
    • 2010-10-02
    • 2011-12-12
    相关资源
    最近更新 更多