【发布时间】:2012-01-09 12:50:57
【问题描述】:
我有一个应该在 armv7 和 armv6 上运行的 iPhone 应用程序。为了调试,应用程序也应该在模拟器中运行。
Xcode 4.2 中的标准是这样的:
armv7 ($(ARCHS_STANDARD_32_BIT))
我不清楚$(ARCHS_STANDARD_32_BIT) 代表什么以及是否应该使用这两个:
- $(ARCHS_STANDARD_32_BIT)
- armv6
或者三个都这样
- armv6
- armv7
- i386
在我的情况下,最好的选择是什么?以及Architectures 如何与Valid Architectures 一起使用
【问题讨论】:
-
当使用
armv6和armv7作为architecture(没有i386)时,我现在可以为armv6 编译它。所以目前我没有使用$(ARCHS_STANDARD_32_BIT) -
$(ARCHS_STANDARD_32_BIT) 在 Xcode 默认模板中定义,您无法修改该模板,但您可以通过自己的配置来覆盖它。它曾经被定义为“armv6 arv7”,但他们在 4.2 中将其更改为“armv7”。我能够通过使用您的第一种技术来恢复旧行为,但仅限于使用 iOS SDK 的目标(您必须单击构建设置中的小“(+)”按钮才能为 SDK iOS vs 模拟器添加行,并且仅针对 iOS 进行更改)。
-
有谁知道哪些iOS设备需要armv6?主要是下面评论中提到的 iPod Touch 3G 吗?
标签: objective-c ios xcode