Xcode 11 beta 4构建错误:“命令CompileSwiftSources失败,退出代码非零”(错误:未知参数:'-Wno-shorten-64-to-32')

时间:2019-07-18 07:55:25

标签: cocoapods xcode11

一个在Xcode 11 beta 3中可以正常编译的项目,由于Pod中的错误而无法在beta 4中进行编译:

<unknown>:0: error: unknown argument: '-Wno-shorten-64-to-32'
Command CompileSwiftSources failed with a nonzero exit code

有问题的吊舱是Down,这是Swift中的Markdown库。

这与其他SO question非常相似,但具有不同的“未知参数”:

  

错误:未知参数:'-Wno-shorten-64-to-32'

有什么建议吗?

3 个答案:

答案 0 :(得分:1)

为了使讨论中的其他人受益,请查看this CocoaPods thread。事实证明,CocoaPods向Swift传递不可接受的标志存在问题,并且beta 4编译器现在拒绝此类标志,而前一个则不接受。在Down的情况下,对于Objective-C编译器,-Wno-shorten-64-to-32标志可以,但Swift不能。 Down可以通过删除

在短期内解决此问题
spec.compiler_flags = '-Wno-shorten-64-to-32' 

line,正如Mike Glass在这里建议的那样,但从长远来看,如果需要与CocoaPods修复程序要求的任何新podspec语法匹配,CocoaPods将必须允许在不同编译器之间分隔编译器标志,然后进行相应的Down更新。

答案 1 :(得分:0)

在Down.podspec文件中注释此行:

spec.compiler_flags = '-Wno-shorten-64-to-32' 

至少在现在为我工作。但是,没有任何副作用的保证。由于各种原因,我有本地版本的Pod,所以对我来说这很简单。您的结果可能会有所不同,但是暂时可以使您重新运行。

答案 2 :(得分:0)

解决了Xcode 11.3中的问题。完成与衍生数据相关的所有操作,清除,删除吊舱,以及互联网上所有可用的功能,但没有运气,并且该应用程序未在实际设备上进行调试。然后以为可能是Xcode崩溃的问题,只是将Xcode删除到垃圾箱中,然后清除了垃圾箱,然后重新安装了Xcode 11.3的新副本。 对我来说很有效。