需要帮助调试Swift 2.3应用程序。链接器和Bitcode错误仅在存档上

时间:2016-09-20 23:17:58

标签: ios swift xcode

我正在尝试编译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启用,如果可能的话。

非常感谢任何帮助。

2 个答案:

答案 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方框架。