(XCode 4.0.2)存档构建(构建用于在应用商店分发)armv6警告

问题描述:

我发誓我接近于最终提交一个应用程序与XCode 4.0.2。 但是我恐怕现在遇到了一个非常陡峭的障碍。(XCode 4.0.2)存档构建(构建用于在应用商店分发)armv6警告

无论我做什么我总是会得到与armv6架构相关的1-2条警告。 我已成立两个项目&目标构建设置使用方法:

  • 架构:标准(ARMv6的ARMv7的)
  • 基地SDK:最新的iOS 4.3
  • 构建积极的架构只:检查或未选中似乎没有区别)
  • 支持分发平台:iphoneos
  • 有效架构:ARMv6的ARMv7的

在归档(分发到App商店),我总是得到这些警告:

  • iPhone应用程序应包括的ARMv6架构(当前ARCHS =“的ARMv7" )。
  • iPhone/iPod Touch:应用程序可执行文件缺少所需的体系结构。至少必须存在以下体系结构之一:armv6(-19033)

请帮忙。

* UPDATE *

刚读的地方,基本SDK需要被设置为代替的iOS 4.0 “最新的iOS(的iOS 4.3)”。它建立/归档没有警告。

*更新AGAIN *

否认我以前的更新评论。导致整个存档构建的事情是取消选中“仅构建活动架构”选项。不知道为什么它决定现在建立好,因为这个复选框最初没有被检查过,但是只有当我开始改变事情以试图解决警告的时候。

+0

该选项不会检查自己。在编码/调试时,通常只为活动架构构建。在构建发布/部署时,您需要构建所有相关体系结构。 – 2011-05-09 19:16:21

确保在Xcode中建立设置。

  • “架构” 应为 “标准(ARMv6的ARMv7的)”
  • “建设活动体系结构只” 应该是 “NO”。
  • “有效架构”应该是“armv6 armv7”。

它能够使用file命令检查归档的应用程序二进制文件。

$ file Payload/Foo.app/Foo 
Payload/Foo.app/Foo: Mach-O universal binary with 2 architectures 
Payload/Foo.app/Foo (for architecture armv6): Mach-O executable arm 
Payload/Foo.app/Foo (for architecture armv7): Mach-O executable arm 
+0

构建主动架构=没有为我做的窍门。谢谢!! – 2011-11-19 01:40:49

我得到了同样的错误上了XCode 3建立了一个旧的应用程序,但有一个一年后以重建为4的XCode。

所有这些设置是相同的:

"Architectures" should be "Standard (armv6 armv7)" 
"Build Active Architecture Only" should be "NO". 
"Valid Architectures" should be "armv6 armv7". 

我检查了使用file命令归档应用程序二进制文件。

$ file MyApp 

DIDNT返回两个条目

Payload/Foo.app/Foo: Mach-O universal binary with 2 architectures 
Payload/Foo.app/Foo (for architecture armv6): Mach-O executable arm 
Payload/Foo.app/Foo (for architecture armv7): Mach-O executable arm 

但一

$ file MyApp 
MyApp: Mach-O executable arm 

我看到了 '通用二进制' 上面计算器因此实现了应用程序从未被建成为iPad。我不得不将iPhone更换为Universal。

Project > My App Target > Summary Tab > Devices drop down 
Change from iPhone to Universal. 

它将复制MainWindow到MainWindow-iPad。

我没打算让iPad的版本,所以说没有。

我再次归档并验证应用程序工作。