PDA

View Full Version : Should I distribute executables as universal i386+x86_64?




printz
May 14, 2013, 03:28 AM
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?



Tander
May 14, 2013, 04:22 AM
Personally I think stick with the x86_64 route. Every new MacBook or iMac that comes out supports 64 bit. No point hanging around in the past - move with the present.

spyguy10709
May 14, 2013, 05:57 AM
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?

https://i.chzbgr.com/maxW500/5100651520/h0B61878C/


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
May 14, 2013, 07:20 AM
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
May 14, 2013, 08:48 AM
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
May 14, 2013, 09:15 AM
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
May 26, 2013, 02:38 PM
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.