Hacker News new | past | comments | ask | show | jobs | submit login

Question to mac developers: Does Apple let you in any way develop/debug/test programs for older operating systems? If I bought a newly-released-today MacBookAir with Lion, but I want to develop software that would still run on 10.6 and 10.5 - what's the official (and unofficial) ways to do that?



Xcode can always target one or two versions back. As for testing, you have two options:

1. Buy old hardware as a dedicated testing server and run the older operating systems on different partitions

2. Run the older versions in VMWare (10.6 can do this, but I'm not positive about 10.5)

If you don't have 10.6, it's still available for free through the Mac Developer Program.


10.5 ia also available for download through the Mac dev resource subsite.


Probably worth noting that you can seamlessly boot Mac OS X from external USB storage. Just plug the drive in before booting and hold down the "option" key when you power on.


But older OSes often don't run correctly on newer hardware.


We keep an older Mac Mini around running 10.4, 10.5 (and soon to include 10.6) for support of these older systems. We've also found that our universal binary has no issues whatsoever running on Lion, which is a relief as we still prefer Xcode 3.


Is it possible to create a UB for all three architerctures at the same time? (PPC, x86 and x64)


Apple's definition of a "Universal Binary" is an executable the runs on both PPC and x86. However, it is possible to create a fat binary that runs on all three architectures at the same time.

An example of how to do it: http://ngmarley.com/blog/osx-universal-binary/


Apple uses the term "universal" in somewhat inconsistent ways. In the Get Info window, it means what you say. But in developer documentation, it tends to mean a fat binary, with PPC/x86 being the most common pair.


It is possible, however, no PPC binary is allowed in the Mac App Store, even if your binaries also include support for other platforms. This could be a problem if you use third-party binary-only libraries as you have to strip the PPC stream manually from them before you can submit your app to the Mac App Store.


That's not too big a problem. The developer tools include a tool called lipo that can easily remove unwanted architectures from fat binaries.


Only with Xcode 3. As I mentioned below, Xcode 4 does not include support for PPC. Also, there are really four architectures (i386, x86_64, ppc, ppc64), but Xcode 3.2.6 does not like compiling for ppc64.


Is that one mac mini per version or is there an easy way to set up multiple installs?


10.6 and 10.5 (server version) will happily (well, for testing, at least) run in a Virtualbox VM. The host OS have to be OS X server too but with the 99$/year you got also server license for free. Using server instead of desktop is not a significant difference if you don't start the server daemons... somewhat remembers me of NT workstation and NT server (many years ago). :)


It's quite easy to set it up to boot of an external drive; I've done that and had 10.4/10.5/10.6 all bootable off of one external drive (split into three partitions).


Create multiple partitions on the HD - 10.4, 10.5, etc.


Others have answered most of this question, but I'll add a slight addition to supporting 10.5. Since PPC is an unsupported platform, Xcode 4 does not include support for it. I end up using Xcode 3 just for PPC support for one of my projects.


Pretty sure its not the Official way, but i would just take advantage of the new Virtualization feature, and run VM's of older OS, assuming you know where to get the images in the first place




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: