昨天(3/10/14)当 iOS 7.1 发布时,我也升级到 Xcode 5.1,发现我的 PhoneGap/Cordova 项目将不再编译到我的 iPhone 5s。我还将 Cordova 升级到了最新版本:v 3.4.0-0.1.3。
我已经阅读了许多关于 SO 的不同解决方案,这些解决方案与不断变化的活动架构和仅构建活动架构相关,但它们都不起作用。所以这就是我尝试过的以及我得到的错误。最初我得到了错误:
missing required architecture arm64 in file <long file path omitted> libCordova.a
Undefined symbols for architecture arm64
所以我尝试了以下方法。我在我的项目中选择了 CordovaLib 子项目,在项目和目标中,我都去了架构下的构建设置,并确保它不包含在任何调试或发布架构中。此时Build Active Architecture Only设置为“是”。这导致了以下错误:arm64
file was built for archive which is not the architecture being linked (armv7):
<long file path omitted> libCordova.a
Undefined symbols for architecture armv7
将Build Active Architecture Only设置 为“No”,错误再次变为:
missing required architecture arm64 in file <long file path omitted> libCordova.a
Undefined symbols for architecture arm64
我不确定还能尝试什么。该项目的架构设置仅包括设置为 iOS 7.1 的关键“Base SDK”。该项目的目标没有架构设置。无论如何,我相当确定问题出在嵌入式 CordovaLib 子项目上。我该怎么做才能使这个东西成功编译到我的设备上?
更新:Apache 的 Jira 上的相同问题:https ://issues.apache.org/jira/browse/CB-6223