Mac Should I distribute executables as universal i386+x86_64?

printz

macrumors regular
Original poster
Dec 23, 2012
216
0
Is there still a demand for executables supporting i386? Or can I just build for x86_64 only? OSX 10.8 Xcode defaults to x86_64 only, but all versions before that I've had defaulted to universal. I'm concerned of occupying disk space just for this compatibility. Since many Macs use SSDs, I think it matters.

Are there many Intel 32-bit Macs with Snow Leopard support?
 

spyguy10709

macrumors 6502a
Apr 5, 2010
858
211
One Infinite Loop, Cupertino CA
Is there still a demand for executables supporting i386? Or can I just build for x86_64 only? OSX 10.8 Xcode defaults to x86_64 only, but all versions before that I've had defaulted to universal. I'm concerned of occupying disk space just for this compatibility. Since many Macs use SSDs, I think it matters.

Are there many Intel 32-bit Macs with Snow Leopard support?



LOL jk

actually, I'd go i386 and x64, just because it's only a few megabytes more, you'll support people that may not be on the latest system. It's a good developer practice.
 

ArtOfWarfare

macrumors G3
Nov 26, 2007
8,575
4,005
Depends. If users are going to want your app installed on all of their computers, then support i386. If your users only need one or two copies of your app, then I think you'll be safe with x86_64 only.

(IE, Battery Status is supposed to let you monitor all of your wireless devices associated with all of your Macs... So I support i386 for people like me who still have Dino macs that get used maybe weekly, but need their batteries changed every few months.)
 

printz

macrumors regular
Original poster
Dec 23, 2012
216
0
In my case it is an open-source port based on a very old game, so it runs smoothly even on decade-old computers (it's also cross-platform). Thus I believe that not only I had better support i386, but also try to make it work on old OSX. And if I have the means, also support PowerPC (but probably on another executable :p)
 

gnasher729

macrumors P6
Nov 25, 2005
16,571
3,149
In my case it is an open-source port based on a very old game, so it runs smoothly even on decade-old computers (it's also cross-platform). Thus I believe that not only I had better support i386, but also try to make it work on old OSX. And if I have the means, also support PowerPC (but probably on another executable :p)
The biggest problem with x86 support is that you can't use many modern Objective-C features, you can't use the 10.8 SDKs, so at some point it holds you back. If size is the only consideration, I wouldn't worry about that. But as an example, you can't use ARC on x86, so if you want to use that, x86 is out. Personally, you are removing machines built in 2006, and the owners are _not_ going to pay any money for new software. And experience shows that the tightest people who will _never_ part with a penny will be the most vocal ones demanding things from you, for free.
 

Madd the Sane

macrumors 6502a
Nov 8, 2010
508
40
Utah
I myself have a header that will make code both ARC and MRC compatible. This may be complicating things, but it is possible. You have to set the 64-bit build option only for it to work, though. And GC and ARC don't like each other.

To my knowledge, the only x86_64-only framework is GLKit. But GLKit also only runs with OpenGL 3.