GNU ld:-z 来源? -rpath $ORIGIN/../lib?

GNU ld: -z origin? -rpath $ORIGIN/../lib?

我试图了解的遗留 makefile 具有 -Wl,-z,origin,-rpath,'$ORIGIN/../lib'

好的,我看到 -Wl 表示以下是链接器选项;逗号将替换为空格。

GNU ld 的联机帮助页神秘地只说:

   -z keyword
       The recognized keywords are:
           :
           :
       origin
           Marks the object may contain $ORIGIN.

同样,下一个选项 -rpath(相对路径?)包含此 $ORIGIN,表明它是某种关键字,但 $ORIGIN 未在 ld 中另外提及手册页。

$ORIGINSubstitution Sequences in the ELF specification. DF_ORIGIN is documented as well 下提到。

然而,虽然 GNU ld 支持使用 -z origin 选项设置 DF_ORIGIN 标志,但 glibc 中的动态加载器始终支持 $ORIGIN,即使未设置该标志。这意味着在为 GNU/Linux.

构建时没有理由使用 link 编辑器标志