xcodebuild命令行忽略GCC
我试图用不同的预处理宏启动xcodebuild。
我试过了 :
xcodebuild -scheme myscheme
-configuration "Archive"
-sdk "iphoneos5.1"
archive
CONFIGURATION_BUILD_DIR=../build
GCC_PREPROCESSOR_DEFINITIONS=ADHOC
但由于预处理器未被使用,我得到了一个编译错误:
我无法用编译命令的-D标志看到它
但它显示在脚本的开头
Build settings from command line:
CONFIGURATION_BUILD_DIR = ../build
GCC_PREPROCESSOR_DEFINITIONS = ADHOC
SDKROOT = iphoneos5.1
编译错误源代码是:
#ifdef ADHOC
NSUInteger toto = 0;
#endif
但是我得到了对toto
use of undeclared identifier
错误
ps:如果我在Xcode中定义了预处理器宏,那么将使用这些值,覆盖我的内容,并完成归档。 但是我希望根据不同的预处理器定义进行多个构建(这对于为我创建新的构建配置或方案听起来是一个更好的想法)
我必须使用双引号并删除$值。 我曾经,
GCC_PREPROCESSOR_DEFINITIONS='$value ${e}',
这没有用,但是
GCC_PREPROCESSOR_DEFINITIONS="${e}"
作品。
其中,e在循环内是可变的,
environments=("TEST1" "TEST2" "TEST3" "TEST4" "TEST5" "PROD")
for e in "${environments[@]}"
do
....... commands
done
如果我使用
GCC_PREPROCESSOR_DEFINITIONS='$value ${e}'
然后我必须使用像,
GCC_PREPROCESSOR_DEFINITIONS='$value ADHOC=1'
这在一个构建脚本中起作用。
链接地址: http://www.djcxy.com/p/59787.html上一篇: xcodebuild command line ignoring GCC
下一篇: Controlling build location with xcodebuild command line tool