【问题标题】:(XCode 4.0.2) Archive build (build for distribution on app-store) armv6 warning(XCode 4.0.2)存档构建(为在应用商店分发而构建)armv6 警告
【发布时间】:2011-05-09 04:32:35
【问题描述】:

我发誓我即将最终提交带有 XCode 4.0.2 的应用程序。 但恐怕我现在遇到了一个相当陡峭的障碍。

无论我做什么,我总是会收到 1-2 条与 armv6 架构相关的警告。 我已设置要使用的项目和目标构建设置:

  • 架构:标准 (armv6 armv7)
  • 基础 SDK:最新 iOS 4.3
  • 仅构建活动架构:选中或取消选中似乎没有区别)
  • Distribute 支持平台:iphoneos
  • 有效架构:armv6 armv7

在存档(分发到应用商店)时,我总是收到以下警告:

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

请帮忙。

* 更新 *

只需在某处阅读 Base SDK 需要设置为 iOS 4.0 而不是“最新 iOS (iOS 4.3)”。它在没有警告的情况下构建/存档。

* 再次更新 *

忽略我之前的更新评论。导致干净存档构建的原因是取消选中“仅构建活动架构”选项。不知道为什么它现在决定构建良好,因为这个复选框最初没有被选中,但只有在我开始改变事情以尝试修复警告之后。

【问题讨论】:

  • 该选项不会自行检查。在编码/调试时,您通常只为活动架构构建。在为发布/部署构建时,您需要为所有相关架构构建。

标签: ios4 xcode4


【解决方案1】:

确保在 Xcode 中构建设置。

  • “架构”应为“标准 (armv6 armv7)”
  • “仅构建活动架构”应为“否”。
  • “有效架构”应为“armv6 armv7”。

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

$ 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

【讨论】:

  • 构建活动架构 = NO 对我有用。谢谢!!
【解决方案2】:

我在使用 XCode 3 构建的旧应用上遇到了同样的错误,但必须在一年后为 XCode 4 重新构建。

所有这些设置都是一样的:

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

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

$ file MyApp

没有返回两个条目

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

我在上面的 stackoverflow 中看到了“通用二进制”,因此意识到该应用从未为 iPad 构建。

我不得不把 iPhone 换成 Universal。

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

它将MainWindow复制到MainWindow-iPad。

我还没有打算做 iPad 版,所以拒绝了。

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-31
    • 1970-01-01
    • 2020-10-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多