在 Xcode 10 中使用新的构建系统时,如果您的 xcconfig 包含任何条件变量赋值,xcodebuild 将生成错误提示“非法指令 4”。例如:
FOO[sdk=macosx*] = 嗡嗡声
删除“[sdk=macosx*]”后,xcodebuild 就像魅力一样。
我浏览了 Xcode 10 构建系统补丁说明,Apple 并没有说要放弃对条件变量赋值的支持。所以我猜这应该是xcodebuild中的一个错误?
顺便说一句,在 Xcode 9.4 的新构建系统中也出现了这个问题(而由于新构建系统在 Xcode 9.4 中不是默认的,您必须手动设置项目设置。)