Take the 2-minute tour ×

My app needs to run on 10.4 or later. If I launch it on 10.3 it just fails to launch or crashes.

How do you tactfully enforce minimum system requirements? Can you customize the message it shows?

share|improve this question
Honestly, does anyone even use 10.3 anymore? If this is a commercial product, you're totally safe to say that 10.3 is a deprecated OS (even Apple doesn't support 10.3 anymore). –  Dave DeLong Feb 5 '10 at 6:22
It is a commercial product and it has a very niche audience. I hope no one is using 10.3, but because we supported it and tested it up until now, this is how I have to phase it out. –  zekel Dec 28 '10 at 16:22
add comment

3 Answers

up vote 2 down vote accepted

I have not used either of these techniques/advice, just passing along the information I have gathered.

You might try something like the SystemVersionCheck “shim” executable to provide a working OS version check for versions that do not honor LSMinimumSystemVersion (e.g. 10.3).

The pre-compiled executable is PPC-only. You might need to rebuild it to support PPC and Intel machines so that it works with 10.3, but also so that 10.6 users are not prompted to needlessly install Rosetta. I found a blog entry that has a hint on how to setup the PPC build to target 10.3 and the Intel build to target 10.4u (it was written about 10.5 and Xcode 3.0 though—do the latest versions of Xcode even include the 10.3 SDK?).

share|improve this answer
Nope. You get 10.4u, 10.5, and 10.6. Likewise, there was once a 10.2.something SDK, which they killed off a few versions of Xcode ago (either 3 or the one before that). –  Peter Hosey Feb 5 '10 at 6:45
I logged into ADC and looked through the “About” PDFs for Xcode 3.2.1, 3.2 (10.6), 3.1.4 (10.5). The 10.3 SDK is mentioned as an optional install in Xcode 3.1.4, but not mentioned at all in 3.2+. Looks like 10.3 development is limited to at most 10.5 with Xcode 3.1.x (maybe the 10.3 SDK from 3.1.x could be installed with 3.2.x, but that seems dicey). –  Chris Johnsen Feb 5 '10 at 7:28
I was able to build for 10.3 from 10.6, see my question here: stackoverflow.com/questions/2074444/… –  zekel Feb 5 '10 at 15:15
add comment

Add a key to your applications Info.plist, specifying LSMinimumSystemVersion as 10.4.X for whatever X you need as a minor version. For more, see Apple's documentation.

share|improve this answer
You can also set this by architecture using a separate key. For x86_64, you'd want to require either 10.5 or 10.6. –  Peter Hosey Oct 24 '09 at 2:07
I set LSMinimumSystemVersion to 10.4.11 and my app still launches on 10.3 and crashes... I thought I read somewhere that it ignores LSMinimumSystemVersion? –  zekel Oct 27 '09 at 19:06
add comment

If you experience a crash after adding the LSMinimumSystemVersion key to your app's plist manually, then this is due to the Finder not recognizing the changed state of the app properly. Either restart the Finder (e.g. log out) or duplicate the app in the Finder. The copy will then behave correctly.

share|improve this answer
Good to know. That might have saved me a week. –  zekel Jan 4 '11 at 22:00
add comment

Your Answer


