xcodebuild:在新的Xcode 10构建系统中,xcconfig条件变量分配被破坏

时间:2018-10-19 19:21:58

标签: xcodebuild xcode10 xcconfig

在使用新的构建系统的Xcode 10中,如果您的xcconfig包含任何条件变量分配,则xcodebuild将生成一条错误消息“非法指令4”。例如:

FOO [sdk = macosx *] =嗡嗡声

在删除“ [sdk = macosx *]”之后,xcodebuild可以用作超级按钮。

我仔细阅读了Xcode 10构建系统补丁说明,Apple并没有说要放弃对条件变量赋值的支持。我猜这应该是xcodebuild中的错误吗?

顺便说一句,在Xcode 9.4的新构建系统中也出现了该问题(由于Xcode 9.4中不是默认的新构建系统,因此您必须手动设置项目设置。)

1 个答案:

答案 0 :(得分:0)

根据this section in the official documentation,您的配置应该可以正常工作,所以我想肯定这是构建系统中的错误。

您可以考虑以下一种或两种解决方法:

  • 在命令行中强制使用旧的构建系统,该主题已由this question's answers解决。
  • 动态构建变量。例如,以下配置使用PLATFORM_NAMEFOO导出为buzz作为bar作为目标,而将FOO_iphoneos = buzz FOO_iphonesimulator = bar FOO = $(FOO_$(PLATFORM_NAME)) 作为目标是模拟器。
Sub zeroAndAdd0_Click()

    For i = 2 To NumRows
        Cells(i, 4).Value = WorksheetFunction.Sum(Cells(i, 4).Value, Cells(i,5).Value)
    Next i    

End Sub