我收到警告说我的项目需要包含 armv6 二进制文件。但我真的不知道该怎么做。一直在寻找答案,但似乎没有任何建议适合?armv6 是我需要下载以在我的应用程序中支持的东西,还是 Xcode 有它,我只需要将它包含在我的项目设置中?此外,我的应用程序应该支持操作系统回到 3.1。
我在调试部分的 armv6 和 armv7 后面添加了 i386,但我不知道这是否能解决问题。这对有更多经验的人来说是否正确?
我收到警告说我的项目需要包含 armv6 二进制文件。但我真的不知道该怎么做。一直在寻找答案,但似乎没有任何建议适合?armv6 是我需要下载以在我的应用程序中支持的东西,还是 Xcode 有它,我只需要将它包含在我的项目设置中?此外,我的应用程序应该支持操作系统回到 3.1。
我在调试部分的 armv6 和 armv7 后面添加了 i386,但我不知道这是否能解决问题。这对有更多经验的人来说是否正确?
跟着我的脚步
我希望这有帮助
我只是有同样的问题,我尝试这样做,它对我有用
我可以在旧的第一代 iPhone 上运行我的代码,在架构中使用字符串armv6 armv7而不是$(ARCHS_STANDARD_32_BIT)并将“仅构建活动架构”设置为“是”。
在项目设置中,为架构选择“标准”(不是“优化”)。这应该允许您为 Active Architecture 选择“armv6”。这意味着一旦它在应用商店中,它也应该可以在旧设备上运行(除非有任何其他弃用)。
将您的基础 SDK 更改为 iOS 设备 4.x 或更低版本,以便您可以查看 armv6 架构。
我刚遇到同样的问题。我加载了一些较旧的 XCode 项目,它们可以在模拟器上正常编译和运行,但是一旦您尝试在设备上运行或调试(在我的情况下是 iTouch v2),它只会说它正在运行,然后说应用程序退出。没有错误,没有日志。
感谢 iOS 开发者论坛上的某个人让我走上了正轨。在过去的几个 XCode 版本中(不包括 OSX Lion 的 XCode 版本,因为我只能访问 OSX Snow Leopard)Apple 改变了项目的设置方式,甚至是加载的旧项目。
然而,过去包含 arm6 和 arm7 的标准架构,至少在 XCode 4.2 标准中现在只包含 Arm 7 $(ARCHS_STANDARD_32_BIT) 并且显然也重置了旧项目的设置。当我使用模拟器时,我没有注意到这一点。
我尝试将配置字符串更改为“arm6 arm7”,但这不起作用。然而,返回的错误包含解决方案(至少对我来说,希望其他人仍然有这个问题。)
在 XCode 4.2 中,如果您希望构建到较旧的硬件,例如 v1 和 v2 设备,只需将架构的项目设置更改为 $(VALID_ARCHS),默认为 Arm6 和 Arm7 的旧标准。
如前所述,您可能需要为调试选项将“仅构建活动架构”设置为“是”(但我并未确认这是必需的)。
我希望这可以帮助其他仍然遇到这个问题的人,我很抱歉碰到这个线程。
那是因为您使用了新的 iOS 5 SDK。Apple 从标准架构中删除了 armv6 架构。
您可以在我之前开始的这个线程上获得更多信息。