其他平台的force_load链接器标志

时间:2014-07-30 14:07:07

标签: linker ld

我需要包含静态库中的所有符号。使用Xcode编译时,“-force_load”很好。但是,例如,在使用gcc的Ubuntu下使用它时,“-force_load”无法识别。我正在寻找可以在其他操作系统下使用的替代选项。感谢。

1 个答案:

答案 0 :(得分:1)

GNU链接器的选项名为--whole-archive,但-force_load适用于一个库,--whole-archive适用于命令行之后的所有库。所以通常的做法是--whole-archive somelib.a --no-whole-archive

通常你不直接使用ld,而是通过GCC调用它,在这种情况下你必须告诉GCC将选项传递给链接器:-Wl,--whole-archive,somelib.a,--no-whole-archive