昨天(14年3月10日),当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子项目,在项目和目标中,我都转到“架构”下的“构建设置”,并确保arm64
不包含在任何“调试”或“发布”架构中。此时,仅将仅将Active Active Architecture设置为“是”。这导致以下错误:
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 ”设置为“ No”时,错误再次变为:
missing required architecture arm64 in file <long file path omitted> libCordova.a
Undefined symbols for architecture arm64
我不确定还有什么尝试。该项目的体系结构设置仅包含密钥“ Base SDK”,该密钥已设置为iOS 7.1。项目的目标没有体系结构设置。无论如何,我相当确定问题出在嵌入式CordovaLib子项目上。如何使此东西成功编译到我的设备上?
更新:Apache的Jira上的同一问题:https : //issues.apache.org/jira/browse/CB-6223