目标条件库搜索路径xcode

时间:2009-11-24 05:44:41

标签: iphone xcode conditional target

我正试图通过定义来连接.a静态库。这可能在xcode中吗? 基本上尝试在ifdefs中包装特定于库的代码,以便在编译时通过设置标志来排除它。

1 个答案:

答案 0 :(得分:1)

不,C #define与库链接的级别不同。

但是,您可以从自定义构建设置的值(例如#define)设置C BUILT_WITH_FOO(通过预处理器宏构建设置),还可以设置OTHER_LDFLAGS构建设置也基于该自定义构建设置。

例如:

BUILT_WITH_FOO = foo

GCC_PREPROCESSOR_DEFINITIONS_ = USING_FOO=0
GCC_PREPROCESSOR_DEFINITIONS_foo = USING_FOO=1
GCC_PREPROCESSOR_DEFINITIONS = $(GCC_PREPROCESSOR_DEFINITIONS_$(BUILT_WITH_FOO))

OTHER_LDFLAGS_ = -lsomething
OTHER_LDFLAGS_foo = -lsomething -lfoo
OTHER_LDFLAGS = $(OTHER_LDFLAGS_$(BUILT_WITH_FOO))

以上内容只允许您调整BUILT_WITH_FOO构建设置的值,以选择是使用名称以尾随_结尾的预处理器宏和其他链接器标志变体,还是使用名称以尾随_foo结尾。