Xcode - 将二进制文件与调试和发布库链接起来

Xcode - linking binary with debug and release libraries

本文关键字:布库 链接 起来 调试 二进制文件 Xcode      更新时间:2023-10-16

我在 Xcode 5 中有一个使用各种 boost 库的项目。我已经构建了 boost 的调试和发布版本,并将二进制文件放在同一个位置。

我想以这样一种方式构建我的应用程序以进行调试和发布,当我构建调试版本时,它链接到调试提升库,当我构建发布版本时,它链接到发布提升库。

在 Xcode 中,在构建阶段下,我看不到如何在"将二进制文件与库链接"中指定一组二进制文件进行调试,并指定另一组用于发布。

我该怎么做?

为此,您需要进入目标的"构建设置"窗格,找到"其他链接器标志"设置,通过单击左侧的箭头打开设置详细信息,然后在"调试"和"发布"行中输入不同的值。
所需选项的语法是 -l<library name without "lib" prefix or extension> ,例如:

  • "发布"设置中的-lboost_serialization-mt将与libboost_serialization-mt.dylib 链接
  • 调试设置中的-lboost_serialization-mtd将与 libboost_serialization-mtd.dylib 链接

您可能还需要告诉它您的库位于何处,在同一设置中使用-L</path/to/your/boost/libs>,例如 -L/opt/local/lib/

您可能还需要从"将二进制文件与库链接"阶段完全删除 boost 库。

您还可以使用 .xcconfig 设置文件绕过 GUI。有关详细信息,请参阅此问题。