我正在尝试编译Swift应用程序(测试版本),但是我面临一个非常奇怪且孤立的错误:
错误:无效的bitcode版本(制作人:' 800.0.38.0_0'读者:' 703.0.31_0') clang:错误:链接器命令失败,退出代码为1(使用-v查看调用)
奇怪的是应用程序编译到设备,测试套件运行和标准(CMD + B)构建操作都成功。唯一失败的操作是产品>存档
其他信息: 我正在使用Cocoapods并确认所有pod正在查看Swift 2.3分支并与我的应用程序兼容。最后,我在一个完全不同的开发机器(MacPro)上尝试了这个版本,并且遇到了同样的障碍。
最新信息: 当我在Build Settings中禁用bitcode时,它会正确编译。我还是认为这是其中一个pod的问题,可能没有使用正确的标志。如果有人有进一步的见解,因为我希望保持bitcode启用,如果可能的话。
非常感谢任何帮助。
答案 0 :(得分:4)
在目标的构建设置中停用ENABLE BITCODE
并尝试Archive
它。禁用ENABLE BITCODE
不会对产品存档产生任何不利影响。由于这是Apple的可选标志,因此您可以禁用它,除非Apple将来需要标记。有关详细信息,请参阅Bitcode Enabling/Disabling
答案 1 :(得分:2)
升级其中一个第三方库后,我遇到了完全相同的问题。我想这是因为第三方库是使用Xcode 8构建的,我还在Xcode 7上。另请参阅this question主题(尚未回答)。
可能的修复方法是:
1)更新Xcode(但我没有尝试,但希望找到一个更简单的解决方案)
OR
2)找出导致错误的库,并要求他们提供固定版本或回退到以前的版本。
更新:选项2帮助了我。第三方派对开发人员(Bugsee)给我发了一个用Xcode 7编译的新框架,现在一切正常。
如果您出于某种原因使用较旧的Xcode版本,请小心更新第3方框架。