66

At the moment I'm compiling for both armv6 and armv7. I've also set the target iOS version as 4.0.

Am I right in saying that all devices capable of running iOS 4.0+ are armv7, and thus I can stop compiling for armv6?

Not a big deal, but it means that my app's binary will be quite a bit smaller if I can.

Jordan Smith
  • 10,310
  • 7
  • 68
  • 114

2 Answers2

158

Sorry, but you aren't right. The iPhone 3G and iPod Touch 2G are able to run iOS 4 (barely) and they include a armv6 processor.

ARMv8 / ARM64 = iPhone 5s, iPad Air, Retina iPad Mini
ARMv7s = iPhone 5, iPhone 5c, iPad 4
ARMv7  = iPhone 3GS, iPhone 4, iPhone 4S, iPod 3G/4G/5G, iPad, iPad 2, iPad 3, iPad Mini  
ARMv6  = iPhone, iPhone 3G, iPod 1G/2G

iOS 4.3+ requires ARMv7. If your Deployment Target is 4.3, you can exclude armv6 support.

As of XCode 4.5 you cannot build for armv6 @Paul de Lange

Henrik P. Hessel
  • 36,243
  • 17
  • 80
  • 100
23

You can safely drop armv6 support IF you set your deployment target to 4.3. This is because iOS 4 can be installed on armv6 devices only up to 4.2.

Nicolas Miari
  • 16,006
  • 8
  • 81
  • 189
  • 1
    Thanks, good to know! In this case I think that will be too limiting though. 95% of iOS devices are running iOS 4.0+ (apparently, don't quote me on that!) which is not too bad - but removing support for iPhone 3G would then be cutting out an even larger section of potential users. – Jordan Smith Jul 01 '11 at 13:48