Xcode 7 引入了Bitcode,它是某种 LLVM 中间二进制文件,这意味着 Apple 的服务器可以为不同的架构重新编译我的应用程序,而无需我的参与。
在 Lookback,我在我们的库中分发了一个静态归档框架。似乎当您使用“构建和存档”以外的任何东西进行构建时,比特码实际上并没有发送到我的库中,并且任何在他们的应用程序中与我的库链接并尝试在启用比特码的情况下进行构建和存档的人都会得到其中一个两个警告:
ld: 'Lookback(Lookback.o)' does not contain bitcode. You must rebuild it with bitcode enabled (Xcode setting ENABLE_BITCODE), obtain an updated library from the vendor, or disable bitcode for this target.
(如果 lib 是用 Xcode 6 构建的)ld: warning: full bitcode bundle could not be generated because 'Lookback(Lookback.o)' was built only with bitcode marker. The library must be generated from Xcode archive build with bitcode enabled (Xcode setting ENABLE_BITCODE)
(如果 lib 是使用 Xcode 7 和普通的 xcodebuild 构建的)
我有一个构建设备+模拟器通用二进制文件的构建脚本,所以我不能使用构建和存档,而是xcodebuild
从我的脚本的命令行运行。如何xcodebuild
生成正确的启用位码的库?