【发布时间】:2015-07-16 19:58:20
【问题描述】:
我正在尝试为 armv7 和 arm64 架构编译 Adobe 教程 ANE(GitHub 存储库 here,教程 here)以使其更新。
ADT 失败,Apple App Store allows only universal applications. "libIOSVolumeLib.a" is not a universal binary. Please change build settings in Xcode project to "Standard Architecture" to create universal library/framework
但是,lipo -info ios/libIOSVolumeLib.a 报告:ios/libIOSVolumeLib.a are: i386 x86_64 我认为意味着文件正常。
我的 XCode 项目设置清楚地显示:
- 架构使用
Standard Architectures (armv7 arm64) - “仅构建活动架构”设置为
NO - “有效架构”为
armv7 armv7s arm64 - 我的构建配置设置为“发布”
一切正常。正在将 libIOSVolumeLib.a 文件复制到 ADT 构建命令所引用的相应文件夹结构中。
我使用的 ADT 构建命令是:adt -package -target ane Volume.ane extension.xml -swc VolumeLib.swc -platform iPhone-ARM -C ios . -platformoptions platformoptions.xml -platform Android-ARM -C android . -platform default -C default .
我正在使用的 ADT 位于我今天刚刚下载的最新 Adobe AIR SDK (AIR v.18) 的 bin 文件夹中。我不知道这是否是正在使用的 SDK,但我假设它是,因为 ADT 位于此 SDK 文件夹的子目录中。
如何解决此错误?
【问题讨论】:
-
我对 XCode 没有任何经验,但这里的问题看起来像是为(Intel x86 架构)构建的架构 libIOSVolumeLib 与您需要的架构(arm 架构)之间的不匹配。输出应该类似于
ios/libIOSVolumeLib.a are: arm7 arm64