Categories
Hints/Tips Tools

Snow Leopard, Xcode 4.2 and iOS 5.1

My Mac Mini is quite old now but still a good workhorse. It’s running the Snow Leopard OS and I use XCode 4.2 for developing iOS applications.

Recently iOS 5.1 was released by Apple and my iPad prompted me to upgrade. Without thinking I went ahead and performed the software update.

A day or two later, I needed to build an app and connected the iPad as my device which, of course, is no longer recognised because of the OS upgrade. But the iOS 5.1 SDK is only available for Macs running Lion …

… here’s a workaround that will allow you to continue using Snow Leopard and XCode 4.2 It assumes your current XCode 4.2 has been installed to the default location in /Developer

  • Download the Lion based XCode 4.3.1 dmg file

(I used the direct link to Apple Developer downloads at https://developer.apple.com/downloads/index.action but you have to be a registered developer and have a login and password to access this area

  • Mount the image file
  • Enter the following commands in a Terminal window
    sudo cp -R /Volumes/Xcode/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.1.sdk /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/
    sudo cp -R /Volumes/Xcode/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.1.sdk /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/
    sudo cp -R /Volumes/Xcode/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/5.1\ \(9B176\) /Developer/Platforms/iPhoneOS.platform/DeviceSupport/
    sudo rm -f /Developer/Platforms/iPhoneOS.platform/DeviceSupport/Latest
    cd /Developer/Platforms/iPhoneOS.platform/DeviceSupport/
    sudo ln -s ./5.1\ \(9B176\) ./Latest
    
  • Unmount the DMG file

And now my iPad running IOS 5.1 is recognised and works with XCode 4.2

References

http://stackoverflow.com/questions/9613565/ios-5-1-with-xcode-4-2-for-ios-development

http://www.iphonedevsdk.com/forum/iphone-sdk-development/100229-snow-leopard-sdk-5-1-a.html