Xcode - 将二进制文件与调试和发布库链接起来
Xcode - linking binary with debug and release libraries
我在 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。有关详细信息,请参阅此问题。
相关文章:
- CMake 库链接使用两个不同的编译器版本
- C++ C 项目中的静态库链接
- CMake - 更改共享库链接选项
- 如果包含映射的静态库与可执行文件和动态库链接,静态映射(变量)是否会被多次释放?
- 与共享库链接时未定义的引用
- 共享对象、符号、C/C++ 库链接和加载
- 使用 CMake 与其他静态库链接的静态库 - 一个有效,一个无效。为什么?
- 如何与 SDL 库链接?
- 确定Qt库链接
- GNURADIO UHD库链接器问题(C++).
- C++ CURL 库链接器错误,但包含正确的库
- 停止共享库链接丢弃未使用的类
- 当其他链接库链接 stdc++ 为动态时,如何将 libstdc++ 链接设置为静态?
- 使用 MINGW 和 CPLEX 库链接从 Linux 编译 Windows 可执行文件
- LLVM 通行证:破坏库未与传递库链接
- 将共享对象与静态库链接
- QT库链接Windows中的错误
- Cmake Mac OSX库链接问题:在Linux上进行编译,但在Mac上进行了编译
- Crypto 库链接错误使用Visual Studio 2017
- 在我的项目中为库链接 libunwind 时出现链接器错误