我在为我的项目设置不同的配置时遇到了一些问题。我有同一个静态库的两个版本。一个启用了日志记录,另一个没有。
我使用两个不同的 xcconfig 文件进行调试与发布。在这些文件中,我为静态库的两个变体指定库和标头搜索路径。到目前为止,一切都很好。
但是,在我的构建设置中,我看不到有条件地链接实际库的方法。即对Debug 使用debug 变体,对Release 使用release。
有任何想法吗?
我在为我的项目设置不同的配置时遇到了一些问题。我有同一个静态库的两个版本。一个启用了日志记录,另一个没有。
我使用两个不同的 xcconfig 文件进行调试与发布。在这些文件中,我为静态库的两个变体指定库和标头搜索路径。到目前为止,一切都很好。
但是,在我的构建设置中,我看不到有条件地链接实际库的方法。即对Debug 使用debug 变体,对Release 使用release。
有任何想法吗?
您需要使用“Other Linker Flags”构建设置来链接库,而不是标准的“Link Binary With Libraries”UI。可以根据配置更改构建设置:
单击三角形,您可以为 Debug/Release 提供不同的值。您将需要使用该-l
标志。例如,对于libMyLib.a
使用标志的文件名-lMyLib
。您可能需要编辑“库搜索路径”以搜索适当的位置。
如果 debug 和 release 版本的文件名相同,并且您不想更改它们,请将它们分别放入它们自己的目录lib/Debug
和lib/Release
目录中。然后编辑“库搜索路径”构建设置,添加"$SRCROOT/lib/Debug"
或添加"$SRCROOT/lib/Release"
适当的配置。