对于非GNU链接器,是否有与GNU链接器"--just-symbols"相同的选项?

Adr*_*ian 14 c macos linker symbols gnu

-R文件名

--just符号=文件名

文件名中读取符号名称及其地址,但不要将其重新定位或将其包含在输出中.这允许您的输出文件以符号方式引用其他程序中定义的内存的绝对位置.您可以多次使用此选项.

例如,在我的Mac上,ld -R libsomething.a甚至gcc -Wl,-R,libsomething.a不起作用.

fuz*_*zzy 2

既然你在谈论“你的 Mac”,我假设我们正在谈论 OS X 操作系统。

在基于 UNIX 的系统上,大多数时候都会使用链接器“ ld ”(带有 -R 选项)(另请参阅: ELF)。相比之下,OS X 系统使用Mach-O二进制格式和dyld工具进行链接。OS X 不提供与 UNIX 相同的库功能。尝试otool -L使用二进制文件来查看需要库的位置。您可能还想尝试为您的二进制文件设置DYLD_LIBRARY_PATH( man dyld),但请记住安全风险(这可用于像LD_LIBRARY_PATHUNIX 系统上那样注入代码)。