我正在尝试在使用xcodebuild进行命令行构建时设置#define宏,但没有成功。
我尝试了-DMYMACRO=1和MYMACRO=1以及我所能想到的其他方法,但都不起作用。
您如何从命令行设置#define?
我正在尝试在使用xcodebuild进行命令行构建时设置#define宏,但没有成功。
我尝试了-DMYMACRO=1和MYMACRO=1以及我所能想到的其他方法,但都不起作用。
您如何从命令行设置#define?
Roger,
你想要做的是通过命令行工具xcodebuild设置GCC_PREPROCESSOR_MACROS。 xcodebuild的man页面显示了应用这些设置的格式,但是SYNOPSIS部分只将其称为“setting=value ...”。
xcodebuild [-project projectname] -scheme schemename [-configuration configurationname] [-sdk [sdkfullpath | sdkname]] [buildaction ...] [setting=value ...] [-userdefault=value ...]
xcodebuild -workspace workspacename -scheme schemename [-configuration configurationname] [-sdk [sdkfullpath | sdkname]] [buildaction ...] [setting=value ...] [-userdefault=value ...]
最终,您可以通过使用此格式并知道要更改的实际构建设置名称,在命令行上直接设置任何构建设置值。自然会引出一个问题...您可以通过以下方式将OTHER_SWIFT_FLAGS
传递给xcodebuild:
xcodebuild \
build \
"OTHER_SWIFT_FLAGS=${inherited} -D STAGING" \
-target "TargetName" \
-scheme "SchemeName"
#if STAGING
// this will compile
#else
// this won't compile
#endif