如何使用iOS 5构建armv6和armv7架构 [英] How to build for armv6 and armv7 architectures with iOS 5

查看:183
本文介绍了如何使用iOS 5构建armv6和armv7架构的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

iOS5 中,Apple从 ARCHS_STANDARD_32_BIT 中删除 armv6 架构。​​

In iOS5 Apple drops the armv6 architecture from the ARCHS_STANDARD_32_BIT.

为了保持对 iPhone3G 的支持,即使在iOS5中,我仍然希望在 armv6 中编译。

In order to keep the support for iPhone3G I still want to compile in armv6 even in iOS5.

有没有人找到一个解决方案?

Did anyone find a solution for this?

推荐答案

我今天刚刚构建了一些指定iOS 4.0部署目标的东西。只有在Architectures中指定了armv7,Xcode警告我,要支持iOS4.2以下的任何东西,我必须在架构中包含armv6。只需编辑该字段,弹出对话框时单击+按钮并输入文字armv6。

I just built something today specifying a deployment target of iOS 4.0. With only armv7 specified in Architectures, Xcode warned me that to support anything below iOS4.2 I had to include armv6 in Architectures. Just edit that field, click the "+" button when the dialog pops up and enter the literal "armv6".

在我的情况下,我们希望我们的应用程序在iOS4和iOS5。我们不得不进行一些修改,以便在iOS5下正常工作,但所有这些更改都是通过iOS4友好的代码更改完成的。

In my case, we want our app to work under iOS4 and iOS5. We had to make some modifications so it would work correctly under iOS5, but all those changes were done with iOS4-friendly code changes.

我们还添加了一些特定于iOS5的功能以允许应用程序在iOS4下运行而不崩溃的方式。具体来说,我们在尝试使用它们之前测试了iOS5功能,并将仅支持iOS5的库链接为可选。

We also added some iOS5-specific capabilities in a manner that allows the app to run without crashing under iOS4. Specifically, we tested for iOS5 capabilities before trying to use them, and linked iOS5-only libraries as Optional.

因此,在iOS5世界中支持iPhone3G可能同样容易我们希望我们的应用程序能够在iOS4及更高版本上运行(无论使用任何iOS5功能)而不是我们希望确保我们的应用程序在运行iOS5的旧设备上运行。这里有区别;想一想。 : - )

So, supporting iPhone3G in an iOS5 world could just as easily mean "we want our app to run on iOS4 and above (regardless of any iOS5 feature use)" rather than "we want to make sure our app runs on an older device running iOS5". There's a difference here; think about it. :-)

无论如何,重新添加armv6支持非常简单。我想重点在于:在某些时候,当没有更多的armv6设备担心(无论出于何种原因)你不必为它构建。 Apple的观点是每个人都应该尽快升级到最新的硬件。因此,在那个世界中,除了最新和最好的工具之外,没有必要使用工具来默认任何东西。 :-)幸运(或不),我们的开发人员生活在现实世界,并认识到你必须支持旧的东西一段时间。我猜Xcode开发团队也知道这一点,这就是为什么你可以简单地添加armv6支持。

Anyway, adding armv6 support back in is very easy. And I guess the point is this: At some point, when there are no more armv6 devices out there to worry about (for whatever reason) you won't have to build for it. Apple's view is everyone should upgrade to the latest hardware as soon as possible. So in that world, there is no need for the tools to default to anything but the latest and greatest too. :-) Fortunately (or not), we developers live in the real world and recognize that you have to support older stuff for a while. And I guess the Xcode dev team knows this too, which is why you can add armv6 support back in quite simply.

这篇关于如何使用iOS 5构建armv6和armv7架构的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆