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

问题描述 投票:0回答:5

今天我下载了 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
  • 重新启动笔记本电脑

有人关注这个吗?

ios swift xcode
5个回答
8
投票

当我在 Xcode 9 中第一次启动该应用程序时,我就出现了这个问题。

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

Duplicated values


6
投票

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

其他 Swift 标志

删除它。 编译。


5
投票

其他 Swift 标志的值不能包含破折号“-”,但在 Swift 3.2 中,这些值确实需要“-D”前缀


4
投票

在某些时候,您或同事添加了这些标志来查看 Xcode 需要多长时间来编译 Swift 文件。您可以删除它们,因为它们不会影响编译。不确定它们是否仍然受支持,但如果支持,

Active Compilation Conditions
似乎不再采用以破折号开头的格式。


4
投票

步骤:

  1. 单击左上角的项目名称。
  2. 确保选择您的项目,而不是目标
  3. 检查“活动编译条件”中的“调试/发布”字段是否包含
    -Xfrontend
    和/或
    -debug-time-function-bodies
    ,如果是,请尝试删除它们(也许将它们写下来,以防万一它不起作用,这样你就不会搞乱事情变得更糟)
  4. 清理项目,重新启动 Xcode,如果您使用的是 CocoaPods,请运行 pod 更新

1

© www.soinside.com 2019 - 2024. All rights reserved.