We’re going to talk about installing a version of your Mac’s operating system (OS), known as “macOS” or “OS X,” on your Mac, older than the one you’re currently running, on a partition of your primary hard drive or on an external hard drive. You may find that your current instance of OS X is too unstable for normal day-to-day usage or more heavy-duty tasks like development. Remember all the problems people had when they upgraded to OS X 10.13, also known as “High Sierra?” Oy, vey. You might have been like “Get me the heck outta Dodge!” You wanted or needed to get back to a stable OS, like Sierra (OS X 10.12) or El Capitan (OS X 10.11). For developers, you may have to install an older version of Xcode not supported by your latest OS. For Cocoa/macOS developers, you may need to make absolutely sure that your desktop apps are backward compatible, and the only way to do that for sure is to install and run your apps on older versions of macOS. I will show you, step by step, how to get a valid copy of an older version of macOS, make a bootable installer disk, and install the old OS.
Today, we’ll be discussing getting an older version of Xcode (7) to work with a newer version of the iOS SDK (10). When done reading this article, you’ll be able to build, link, install, and debug apps in/from Xcode 7 onto iPhones/iPads/iPods running iOS 10. (If you don’t need background, just skip to the solution.) The main reasons for doing this?
- You have an app built for the last iOS version (9) that has a problem when running in the latest iOS version (10) and you’d like to debug the code; and/or,
- Apple releases a new beta iOS (10) and beta Xcode (8), you want to see how your current, stable code (built for iOS 9) runs on the new beta iOS (10), but you don’t want to trash your current, stable Xcode (7) installation with the beta Xcode (8).
Let’s talk about cleanly installing multiple versions of Xcode (6, 7, 8) side-by-side, together on the same Mac desktop, MacBook Pro, or MacBook Air.
Apple keeps moving forward with new Xcode and iOS versions, but some of us in the developer community need the ability to support — or just experiment with — projects in older versions. I’m currently working on an iOS 9 app, developed in Xcode 7 that’s ready to be submitted to the App Store. At this eleventh hour, the last thing I want to do is go through the pain of upgrading to a new iOS SDK in a new Xcode version. I tried building the app and its constituent libraries in Xcode 8, and was presented with tens of compiler and linker errors. Oy… But I do need to to start moving the project to Xcode 8/iOS 10 — and start other projects, check out new features, and get up to speed…