一个在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'
有什么建议吗?
答案 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的新副本。 对我来说很有效。