Xcode 8.2.1 - 错误:无效的位码版本(生产者:'802.0.41.0_0' 读者:'800.0.42.1_0')

Posted

技术标签:

【中文标题】Xcode 8.2.1 - 错误:无效的位码版本(生产者:\'802.0.41.0_0\' 读者:\'800.0.42.1_0\')【英文标题】:Xcode 8.2.1 - Error: Invalid bitcode version (Producer: '802.0.41.0_0' Reader: '800.0.42.1_0')Xcode 8.2.1 - 错误:无效的位码版本(生产者:'802.0.41.0_0' 读者:'800.0.42.1_0') 【发布时间】:2017-04-18 19:22:13 【问题描述】:

我正在尝试实现新的 Facebook Audience Network ios SDK v4.22.0,但是当我编译项目时出现以下错误:

error: Invalid bitcode version (Producer: '802.0.41.0_0' Reader: '800.0.42.1_0')
clang: error: linker command failed with exit code 1 (use -v to see invocation)

iOS SDK v4.21.1 也出现此错误,但 v4.20.0 没有。我使用的是 Xcode 8.2.1 和 Objective-C,Build Settings 中的 bitcode 选项设置为No

这是 Facebook Audience Network 更新日志,但与此问题无关:https://developers.facebook.com/docs/ios/change-log-4x

还有其他人收到此错误吗?你找到解决办法了吗?

提前致谢! ????

【问题讨论】:

更新你的 Xcode,最新版本是 8.3.1(8E1000a)。 你说得对,iOS SDK需要Xcode 8.3+ ????谢谢! 【参考方案1】:

将 XCode 升级到 8.3+ 将解决此问题。似乎框架是用更高版本的 XCode 构建的,即高于 8.2.1。

禁用位码也将解决此问题。 但是,在将您的应用上传到 AppStore 时,您可能会遇到问题,因为您的项目中的 Bitcode Disable 导致构建未优化

(参考App Thining中的Bitcode部分https://developer.apple.com/library/content/documentation/IDEs/Conceptual/AppDistributionGuide/AppThinning/AppThinning.html

因此,最好升级您的 XCode,而不是陷入此类问题。

【讨论】:

我在禁用 Bitcode 后能够编译。另外,您的意思是在这种情况下升级 XCode 是唯一的选择吗?【参考方案2】:

我们在 Xcode 8.2.1 中遇到过/遇到过同样的问题,但对我们来说,这是由 NewRelic pod 的 5.12.3 版本引起的。所以我们将它固定到 5.12.2 版本,它似乎不需要 Xcode 8.3+,但很高兴使用 8.2.1 构建(因为我们还不能升级 Xcode)。

【讨论】:

有趣的是,这正是我的问题。

以上是关于Xcode 8.2.1 - 错误:无效的位码版本(生产者:'802.0.41.0_0' 读者:'800.0.42.1_0')的主要内容,如果未能解决你的问题,请参考以下文章

iOS:无效的位码版本

存档构建问题

使用 xcodebuild 打包 ipa 的位码错误

Xcode 7.3 的无效位码版本(生产者:'800.0.42.1_0' 读者:'703.0.29_0')

此构建无效。用于上传应用

LLVM 对函数参数的位码错误检测