在 Xcode 中添加链接器标志

Posted

技术标签:

【中文标题】在 Xcode 中添加链接器标志【英文标题】:Adding Linker Flags in Xcode 【发布时间】:2010-01-23 23:02:32 【问题描述】:

(我不确定“flag”是不是我要找的词,但我会解释一下。)

我正在尝试编译一个使用GMP 大数字库的程序。但是为了能够使用 GMP 进行编译,我必须在命令末尾添加 -lgmp。例如,如果我想编译“program.c”,我必须输入gcc program.c -lgmp。这从命令行很容易,但我不知道如何在 Xcode 中执行此操作。如何在使用 Xcode 时添加 lgmp 标志?

【问题讨论】:

【参考方案1】:

右键单击 Xcode Groups and Files 列表中的目标,然后从上下文菜单中选择 Get Info。在 Build 选项卡中,在搜索字段中输入 linker,然后找到 Other Linker Flags 项。

双击Other Linker Flags项并添加-lgmp

【讨论】:

当添加这些标志然后实际上并没有启动时会做什么? (查看编译日志,我添加的标志根本没有传递给clang。头文件和库路径也是如此)【参考方案2】:

也许这有帮助:

您还可以打开活动目标的首选项,然后单击“常规”选项卡。您可以在该选项卡中添加要链接的库,位于底部的“链接库”部分。

取自http://www.soulstorm-creations.com/PROJECT_SOULSTORM_2_0/programming-articles/installing-portable-libraries-on-os-x.html

【讨论】:

【参考方案3】:

您可以在系统上打开包含libgmp.a 的文件夹(默认安装为/usr/local/lib/),然后将库从文件夹拖到您希望它链接到的目标上。还有其他几种方法,例如 Zitrax 建议的方法。

【讨论】:

以上是关于在 Xcode 中添加链接器标志的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Eclipse 中将“其他链接器标志”设置为 Xcode?

-ObjC 链接器标志有啥作用?

多个目标匹配链接器标志的隐式依赖关系

cmake - 全局链接器标志设置(适用于目录中的所有目标)

带有 libxml2 的 Apple Mach-O 链接器警告

Firebase、Fabric 和 Crashlytics,带有 -ObjC 链接器标志,没有 Cocoapods iOS