9

我的 Xcode 7 beta3 项目包括一些由 Xcode 6 编译的框架,这些框架通过“构建阶段”选项卡中的嵌入框架选项导入到我的项目中。因为这些框架不支持bitcode,所以“Enable Bitcode”选项变成NO,编译项目时,出现Bitcode_strip错误:

/Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/bitcode_strip /Users/panzhansheng/Desktop/MusicFans_2.0.4_xcode7_autoplay/MusicFans/Frameworks/FLAC.framework/FLAC -r -o /用户/panzhansheng/Library/Developer/Xcode/DerivedData/MusicFans-bxutvotiungdbwfsxloykffnqoqs/Build/Products/Debug-iphoneos/MusicFans.app/FLAC.framework/FLAC/Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault。 xctoolchain/usr/bin/bitcode_strip:输入文件必须是链接的 Mach-O 文件而不是存档:/Users/panzhansheng/Desktop/MusicFans_2.0.4_xcode7_autoplay/MusicFans/Frameworks/FLAC.framework/FLAC(对于架构 i386)错误: bitcode_strip /Users/panzhansheng/Desktop/MusicFans_2.0.4_xcode7_autoplay/MusicFans/Frameworks/FLAC.framework/FLAC: /Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/bitcode_strip 以 1 退出

我发现Xcode将我的框架复制到我的App包并尝试从框架中剥离bitcode时发生错误,但是这些框架是由Xcode早期版本编译的,根本不包含bitcode。如何解决这个问题?谢谢!

4

3 回答 3

16

正如我发现的那样,XCode 仅在环境变量 STRIP_BITCODE_FROM_COPIED_FILES 设置为 YES 时才使用位码条带。当 enable_bitcode 打开时,它似乎默认设置为 YES。

将用户定义的设置 STRIP_BITCODE_FROM_COPIED_FILES=NO 添加到您的目标可以帮助您,XCode 不会使用 bitcode-strip,但是您的应用程序将使用没有 bitcode 部分的框架可能无法工作。因此,如有必要,最好也使用 STRIP_BITCODE_FROM_COPIED_FILES=NO 重新编译它们。

在 XCode 7 beta 5 上测试

于 2015-08-21T11:49:20.563 回答
10

跟进 M. Pogosskiy 的回答,我花了一段时间才找到放置 STRIP_BITCODE_FROM_COPIED_FILES 位设置的位置(对这些不太熟悉)。供参考,这里有一个插图:

在此处输入图像描述

于 2015-10-13T15:17:39.860 回答
0

这是由于 Mac 系统中可用的内存/磁盘空间不足。当我清除它时。它运行平稳,无需自行清洁。

于 2020-06-12T09:17:34.537 回答