24.April 2008 – 22:34

Recently I sent a tiny bugfixed build to a customer – just to get a phone call some minutes later it doesn’t even launch on his test machine. What happened? A quick glance at Console.app revealed that dyld complains his 10.4.8 (unpatched) machine is missing the CoreVideo framework. 

Odd enough, nothing besides a handful of lines was changed from the last, working build. The only change was that in the meantime Leopard arrived and I produced the new version with Xcode 3. Rebooting on Tiger and rebuilding with Xcode 2.4 produced an working build. Applying QuickTime and the OS X 10.4.11 updates allows the new build to launch – but is a management nightmare for the 100 target MacMinis that run without any network or administrative access.

Today I was asked to provide another build, now equipped with a post-Leopard MacBook that does not like my Tiger installation DVD any more. Time for the real fix. The shortcut – simply copying the Xcode 2.4 SDK version to the 2.5 installation – fails as gcc won’t resolve stdarg.h etc. due to the new Developer Tools relocatable folder structure.

After some more investigation it turned out QuartzCore.framework differs in the SDKs. With the following steps it is possible to get a backward compatible SDK:

  • create a copy of the Xcode 3  MacOSX10.4u.sdk – I called mine Fixed_MacOSX10.4u.sdk
  • replace the QuartzCore.framework with the version from the Xcode 2.4.1 installation
  • open SDKSettings.plist in your pimped SDK copy
  • change the name value to something unique – I used Mac OS X 10.4 (Universal,Compatible) 
  • in projects that need a build backward compatible to 10.4.0, change the SDK to Mac OS X 10.4 (Universal,Compatible)  instead of the regular SDK.


  1. One Response to “Pimp-My-Xcode-SDK”

  2. I just want to let you know that, even though it appears you haven’t posted again since you started this blog, that one post that you did make just gave me a solution to a problem I’ve been fighting for close to a year now.


    -=- John

    By GoannaGuy on Nov 20, 2008

Post a Comment