【问题标题】:how to stop xcode5.1 building for 64bit如何停止为 64 位构建 xcode 5.1
【发布时间】:2014-04-14 12:13:09
【问题描述】:

我刚刚更新到 xcode 5.1 - 苹果决定让所有应用程序默认编译为 64 位 - 我的应用程序有一些遗留代码,我花了最后几个小时弄清楚如何停止为 64 位构建 Xcode。认为这可能会帮助有同样问题的人......

查看公认的答案以获得更清晰的视觉步行思路

(我基于原文的答案...)

在 Targets-->Build Settings-->Architectures-->Architectures

  1. 选择其他
  2. 删除(按'-')$(ARCH_STANDARD)
  3. 添加(按“+”)armv7
  4. 添加(按“+”)armv7s
  5. 清理并构建

【问题讨论】:

  • 您需要编辑问题的答案部分并将其作为答案包含在下面。无论如何,投票给你 - 而不是反对 - 因为这非常有用,谢谢。

标签: xcode 64-bit xcode5 32bit-64bit


【解决方案1】:

OP 会连同问题本身一起发布解决方案。但我觉得将其添加为答案会更好。在Xcode 5.1 中,苹果对architecture 部分进行了重大更改。他们将arm64 作为标准架构的一部分。这意味着使用默认设置的项目也将自动为arm64 构建。那么如果你的应用不支持arm64,你会怎么做?

文档说:

不支持 64 位的项目需要专门设置架构构建设置不包括 64 位。

怎么做?

  1. 转到目标-->构建设置-->架构-->架构

  2. 双击架构会弹出一个菜单。选择其他人

  3. 删除现有行 - $(ARCH_STANDARD)。一一添加需要的架构

  4. 现在您的架构部分将如下所示

【讨论】:

  • 当我像这样修改我的拱门时,应用程序在 Iphone 64bit (Iphone 5, 5s..) 上正常运行?
  • 我也有同样的问题。
  • 请注意,A7 包含一个完整的 32 位兼容模式,允许运行正常的 32 位 ARM 代码而无需任何更改和仿真。这意味着,与其他硬件相比,iPhone 5S 运行旧 iPhone 应用程序没有问题,也不会影响性能。 32 位代码在运行时可能会降低性能,因为它没有 ARM64 的优势。 mikeash.com/pyblog/friday-qa-2013-09-27-arm64-and-you.html
  • 有效架构字段中应该包含什么?
【解决方案2】:

或者直接使用$(ARCHS_STANDARD_32_BIT)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-11
    • 1970-01-01
    相关资源
    最近更新 更多