如何将rpath与LLD链接器(LLVM)一起使用

问题描述 投票:0回答:1

我最近设法在一个大型 cmake 项目中使用 lld 链接器。 (LLVM 11,来自此包) 我不使用 clang,我使用 G++ 和 LLD。

但是我遇到了以下问题:

lld: error: unknown argument: -rpath

按照 clang 文档,-rpath 应该可以工作,至少对于 clang 我猜是这样?

这是cmake生成的g++命令:

g++.exe  [...] -fuse-ld=lld [...] -Wl,-rpath='$ORIGIN' [...]

我手动尝试了很多组合:

-Wl,-rpath='$ORIGIN'
-Wl,-rpath,'$ORIGIN'
-Wl,-rpath '$ORIGIN'

...等等,没有任何作用。

据我了解, lld 的行为应该与 ld 完全相同?,所以 -Wl,-rpath='$ORIGIN' 应该有效? 我错过了什么吗?

g++ llvm lld
1个回答
0
投票

CMake 为我输出以下内容(在 MacOS 14.5 上使用 Clang):

-Wl,-rpath,"\$ORIGIN/"

© www.soinside.com 2019 - 2024. All rights reserved.