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

时间:2014-04-03 07:25:04

标签: c++ xcode boost linker

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

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

在Xcode中,在Build Phases下,我不知道如何在' Link binary With Libraries'中指定一组二进制文件。用于调试和另一组用于发布。

我该怎么做?

1 个答案:

答案 0 :(得分:9)

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

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

您可能需要在同一设置中使用-L</path/to/your/boost/libs>告诉您图书馆所在的位置,例如-L/opt/local/lib/

您可能还需要从“使用库链接二进制”阶段中删除增强库。

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