新的ios6架构错误:文件是通用的(3个切片),但不包含(n)arm7vs切片

时间:2012-10-02 08:50:52

标签: cordova ios6 xcode4.5 armv7

我有一个设计在cordova 1.8.1和xcode 4.4中的设备。我希望能够更新它以在iPhone 5和ios 6上运行。但是,即使我尝试在xocde 4.5中运行应用程序进行调试,也会收到此错误:

file is universal (3 slices) but does not contain a(n) armv7s slice: /Users/Shared/Cordova/Frameworks/Cordova.Framework/Cordova for architecture armv7s. 

我用谷歌搜索过,并尝试将项目设置为目标arm7vs,但它不起作用。谁能告诉我导致这个错误的原因是什么?

我是否需要更新我的Cordova / PhoneGap版本?

1 个答案:

答案 0 :(得分:41)

iPhone 5的SoC有一个新的架构:armv7s。当您切换到Xcode 4.5时,您的项目的“有效体系结构”设置可能已更新为包含armv7s。问题是您的库似乎还不支持它(它们不是为armv7构建的)。

您有三种方法可以解决此问题:

  • 从项目中删除armv7s(目标)“Build Settings”/“Valid Architectures”: enter image description here

  • 将“仅构建活动体系结构”设置为YES:
    enter image description here

  • 更新静态库(如果他们有更新版本支持armv7s)

  

编辑:   对于那些无法找到“仅构建活动架构”选项的用户,请确保“构建设置”下的“全部”过滤器按钮处于活动状态:

     

enter image description here