【发布时间】:2012-03-21 09:03:07
【问题描述】:
我必须更新一个适用于 iOS 的应用程序,该应用程序从 iOS 3.1.3 运行到最新的 5.1。
当我在新的 Xcode 4.3.1 上构建代码并尝试在装有 iOS 3.1.3 的旧设备上测试此应用程序时,我收到错误“可执行文件的 CPU 类型错误”。
iOS Deployment Target = 3.1.3
Architectures = armv6 $(ARCHS_STANDARD_32_BIT) - armv6 $
Valid Architectures = armv6 armv7
如果我将 armv5 添加到有效架构列表中,代码会安装在设备上,但应用程序以黑屏启动,并且没有任何反应。 然后我可以停止程序并在设备上启动它。它似乎工作了。
是否允许将 armv5 添加到有效架构列表中?这是摆脱错误的解决方案吗?
【问题讨论】:
-
我不知道你的项目中发生了什么,但你不应该使用“armv5”!你试过添加armv7吗?
-
我认为不需要 armv5。尝试将 Architectures 的值设置为字符串“armv6 armv7”,即删除
$(ARCHS_STANDARD_32_BIT)变量。这是一个带有屏幕截图的相关问题stackoverflow.com/questions/4198676/… -
将 Architectures 的值设置为字符串 "armv6 armv7" 后,程序在 3.1.3 设备上运行。谢谢!
-
@thpitsch 你找到解决这个问题的方法了吗?
-
iPhone 上实际上没有 armv5 这样的东西。最初的 iPhone 是从 armv6 开始的。然后苹果将其升级到 armv7。
标签: ios