小编mah*_*y67的帖子

如何设置 DT_RPATH 或 DT_RUNPATH?

在 Linux 上,ld.so(8)手册页讨论了动态库的搜索顺序。它说这DT_RPATH已被弃用,并且还提到了DT_RUNPATH. 没有提及-rpath链接器选项。

手册ld(1)页提到了-rpath-rpath-link选项,但在描述库搜索顺序时从未提及DT_RPATHDT_RUNPATHexcept,这当然与 中给出的信息不匹配ld.so(8)

最后还有一个LD_RUN_PATH环境变量。ld(1)说如果未设置-rpath和选项则使用它,但没有提及。-rpath-linkld.so(8)

我的直觉是,-rpath实际上设置了DT_RPATH,并且-rpath-link设置了DT_RUNPATH,但我在任何地方都找不到这一点得到证实。我一直用-rpath; 如果它与我不应该使用它相同DT_RPATH,但是我在动态链接上找到的操作方法文章说要使用它,所以我不确定它是否相同。

有人可以澄清DT_RPATH和是如何设置的,以及它们是否与和DT_RUNPATH相同?-rpath-rpath-link

linux shared-libraries ld

7
推荐指数
1
解决办法
5541
查看次数

标签 统计

ld ×1

linux ×1

shared-libraries ×1