【发布时间】:2015-10-07 12:19:14
【问题描述】:
当 -L 已经告诉共享库路径在哪里时,我不明白为什么有必要使用 LD_LIBRARY_PATH 提供 rpath 或设置环境变量。
this answer 说:-L 告诉 ld 在 链接 时在哪里寻找要链接 的库。
但是为什么同时自动没有设置对应的-rpath呢?为什么我们需要再次手动操作?
P.S:我想如果你有这个功能,那么可执行文件在其他环境中将毫无用处。但如果是这样,那么 ld 在 linking 期间实际上做了什么,或者为什么在其他环境中 -rpath 不同时需要提供 -L 路径。
【问题讨论】:
-
我同意这是链接器令人讨厌的错误功能。
标签: environment-variables ld rpath