I’ve been working on an iOS app using an upgraded mid-2009 MacBook Pro, but I ran into a roadblock the other day when I wanted to test the app on a real device instead of just the iOS simulator. My iPhone is running the latest iOS 10.3 as of this writing, but the version of Xcode I had—8.2—only supported deploying an app to iOS 10.2.
It turns out that I needed to update Xcode to 8.3, but that version only runs on macOS Sierra. And the mid-2009 MacBook Pro is no longer supported by macOS; I’m stuck with OS X El Capitan. I thought I might be out of luck, but I found a workaround on Stack Overflow:
- Exit Xcode 8.2
Xcode8.3.2.xipfrom Apple (https://developer.apple.com/services-account/download?path=/Developer_Tools/Xcode_8.3.2/Xcode8.3.2.xip) (requires sign-in)
~/Downloads/Xcode8.3.2.xip(in Finder, double-click)
- Copy folder
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport(in Finder, right click on
Xcode.appand ‘Show Package Contents’)
- Start Xcode 8.2 and wait for it to process the new files.
I’m not thrilled about this limitation, but I get that compatibility needs to be dropped at some point. I think nearly 8 years is a pretty good run for this MacBook, and it’s still perfectly usable for everyday tasks. I’ll be investing in newer Apple hardware soon so I have full confidence that everything is built and running properly before deploying the app for distribution. This workaround is great for on-device testing, but I don’t feel comfortable using it as a final build step before deploying the app to the app store.