1

我尝试在新的 iPad 4(A6X,armv7s 指令集)上调试我的 ios 6.1 项目。但是构建失败了

No architectures to compile for (ONLY_ACTIVE_ARCH=YES, active arch=armv7s, VALID_ARCHS=armv6 armv7 i386).

我正在使用 XCode5-DP6。在最新的 iPod touch (armv7) 和 iPad 和 iPhone 模拟器(iOS 6.1 和 7.0)上调试应用程序。

我的理解是,为 arm7 构建的代码应该在 arm7s 上构建和运行,因为 iPad3 和 iPad4 之间的应用程序是相同的?任何线索我做错了什么?

4

1 回答 1

1

我知道的最后一个带有 armv6 的产品是 iPhone 3G,甚至 iPhone 3GS 也是带有 armv7 的。Apple 以您无法编译到该处理器架构的方式删除了对 armv6 的支持,即使您成功编译,您在将应用程序提交给 Apple 时也会遇到问题(不会自动接受构建)。此外,您无法编译到低于 4.3 的操作系统(它也会给您带来错误),因此存在一些限制 - 我这么说是因为我认为旧设备也无法支持新操作系统。因此,不会有任何旧 iPhone 的操作系统可以支持 Apple 平台,这只是几天的事情。

因此,我的建议是将构建和有效架构更改为 armv7、armv7s 和 i386(如果需要)。

这会奏效,你真的别无选择。您应该知道大多数用户并不拥有这些旧设备。如果您仍然想支持这些,也许您应该考虑为“新”设备添加一个特定的新应用程序,但要知道由于前面的解释,您无法更新旧版本。

于 2013-09-09T11:05:25.930 回答