Swift:条件编译标志必须是有效的Swift标识符

时间:2017-07-27 22:41:29

标签: ios swift xcode

今天我下载了XCode 9.0 Beta 4,在构建项目后,我收到了下一条警告信息

<unknown>:0: error: conditional compilation flags must be valid Swift identifiers (rather than '-Xfrontend')
<unknown>:0: error: conditional compilation flags must be valid Swift identifiers (rather than '-debug-time-function-bodies')
Command /Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swiftc failed with exit code 1

我尝试了几个选项,比如我在这里搜索过,但找不到任何解决方法。

  • 清理项目
  • 清理构建文件夹
  • 重新启动XCode
  • 重新启动笔记本电脑

有人吗?

5 个答案:

答案 0 :(得分:7)

这个问题对我而言,当我第一次在Xcode 9中启动应用程序时。

我在构建设置中有重复的值 - &gt;其他Swift标志。删除重复后,应用程序开始按预期工作。

Duplicated values

答案 1 :(得分:5)

在项目设置和各个目标设置中找到以下内容:

其他Swift Flags

删除它。 编译。

答案 2 :(得分:4)

其他Swift Flags的值不能包含短划线“ - ”,但在Swift 3.2中,值确实需要“-D”前缀

答案 3 :(得分:3)

在某些时候,你或同事包括那些标志,看看Xcode需要多长时间才能编译Swift文件。您可以删除它们,因为它们不会影响编译。不确定它们是否仍然受支持但是如果它们是,Active Compilation Conditions不再采用以破折号开头的格式了。

答案 4 :(得分:3)

这对我有用,希望这可以帮助其他人:

<强>步骤:

  1. 点击左上角的项目名称。
  2. 确保选择项目,而不是目标
  3. 检查“活动编译条件”中的“调试/释放”字段是否包含“-Xfrontend”和/或“-debug-time-function-bodies”,如果是这样,请尝试删除它们(可能会将其写下来以防万一不行,所以你不要搞砸了更多大声笑)
  4. 清理项目,重新启动Xcode,如果您正在使用CocoaPods,请运行pod更新
  5. 这就是我解决问题的方法,这几乎与你的问题完全相同,希望这会有所帮助。祝你好运。

    1]