使用Xcode 9创建iOS通用框架

时间:2017-10-13 13:22:38

标签: ios objective-c llvm bitcode ios-universal-framework

我正在为iOS创建通用框架。我试图通过 lipo 创建一个,它确实创建了一个通用的

我在创建后用lipo检查架构,它让我回答正确: 胖文件中的体系结构:i386 x86_64 armv7 arm64

我在手机和模拟器上运行该应用程序也可以。但是当我尝试从xcarchive导出.ipa时,我收到以下错误:

无法验证Myframework.framework / Myframework中的bitcode:\ nerror:不支持平台iPhoneSimulator \ n \ n

此外,我可以在我的通用框架中运行

中的bitcode符号
otool -l /Path/To/Framework | grep __LLVM

  segname __LLVM

   segname __LLVM

如果我只选择工作正常的iphoneos框架

1 个答案:

答案 0 :(得分:2)

在导出存档之前,您需要从框架中删除i386和x86_64。

e.g。 $ lipo -remove i386 ./path/to/binary_name -o ./path/to/binary_name $ lipo -remove x86_64 ./path/to/binary_name -o ./path/to/binary_name

您需要这样做,因为i386和x86_64不支持导出 - "不支持平台iPhoneSimulator"