我正在开发一个分发给许多开发人员的静态库。现在我遇到了位码生成的问题。 当我将此库包含到 xcode 项目并尝试将其存档时,链接器产生错误
MyModule.o 不包含位码。您必须在启用位码的情况下重建它(Xcode 设置 ENABLE_BITCODE),从供应商处获取更新的库,或者为此目标禁用位码。用于架构 arm64
我尝试了所有可能的事情(来自 here 和 here )但没有任何帮助。启用位码标志后,宿主项目仍然无法存档。
奇怪的是 otool -l
命令说所有模块都包含一个位码部分。那为什么xcode工程不能归档呢?
最佳答案
如果错误确实来自您的库(而不是您项目中的其他库或框架),您可以从 Xcode 7 再次编译静态库。
默认情况下 - 它会在您的build设置中添加选项“enable_bitcode”。 确保将其设置为 yes(默认值),并且所有其他源也使用 lib 支持位码编译(如果不是 - 您将收到错误)- 一切顺利。
替代方法是在使用您的库的 Xcode 项目中启用_bitcode = no(通知您的开发人员)。
关于ios - 静态库中的 ENABLE_BITCODE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33192792/