iPhone应用程序的部署目标低于4.3的应该包含一个armv6架构。

27

我有一个问题 :-( 当我构建我的应用程序进行发布时,XCode显示警告信息:

iPhone apps with a deployment target lower than 4.3 should include an armv6 architecture (current IPHONEOS_DEPLOYMENT_TARGET = "3.0", ARCHS = "armv7").

但是我怎么才能在我的构建设置中设置armv6呢?我正在使用XCode 4.2,以下是我的构建设置:

输入图像描述

谢谢!

1个回答

32

我没有使用这个版本,但当前的Xcode不支持对iOS 2.0进行签名,所以当iOS 5发布时,3.0可能会遇到同样不被支持的问题。

引用自http://www.weston-fl.com/blog/?p=3050(此网站帮助我解决了许多错误,所以感谢Mike D.)

  1. 在Xcode中导航到“Build Settings”并找到“Architectures”组(它位于顶部,很难错过)。将“armv6”添加到“Architectures”行。它应该包括“armv6,armv7”或“标准(armv6 armv7)”
  2. 将“Base SDK”设置为最新的iOS(当前设置为iOS...)
  3. 取消选中“仅构建活动架构”或将其设置为“NO”。
  4. 有效体系结构必须显示armv6 armv7。当您的项目使用自己的依赖库时,请使用相同(正确)的配置构建它们。

1
经过一些研究,我找到了一篇有用的博客文章,详细介绍了如何修复这个问题。现在它已经包含在我的答案中了。 - Sum
4
想要补充一点,在架构设置中,“armv6 armv7”可能不起作用。对于我的项目,只有当我保留旧值并添加armv6时才有效,结果为:“armv6 $(ARCHS_STANDARD_32_BIT)”。 - brack
6
如果你需要更详细/截图丰富的步骤说明,请访问这里:https://dev59.com/p2855IYBdhLWcg3wsWhq#7687527 - Sum
1
在Xcode 4.2中,将架构更改为“armv6 armv7”对我有用。 - Nicolas Renold
3
为了让新手完全明白:正如Sum在评论中所说,Xcode有一个用于当前体系结构的变量。在“Architectures”主类别的下拉列表中,选择下拉菜单,在我的情况下,列表中不再提供armv6选项(iOS 5之前)。因此,我选择“其他”,然后点击加号按钮,并将文本字符串“armv6”添加到列表中,然后构建即可解决问题! - Jay Imerman
显示剩余2条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接