TL/DR: Is there any way to get the latest tvOS SDK, and hack it into my (slightly older) version of XCode, so I can do tvOS development on my machine?

Background: I need to do some tvOS development. My AppleTV is running tvOS 12.3. My Mac is running 10.13.6. The latest version of XCode that will run on macOS 10.13.6 is version Xcode 10.1, and when I try to connect to the AppleTV, Xcode complains that it is not compatible with tvOS 12.3, and tells me I should update.

The last time I tried to update my MacBook Pro beyond macOS 10.13, it failed halfway through, and Time Machine also failed to restore properly. I lost half a week rebuilding my machine, and still run into things that are not quite right (e.g. execute bits inside app bundles). I'm not eager to go through that again.

So I bought an external 2TB Western Digital hard drive, and tried to install Mojave on that. After a day and a half of trying, I give up. It's been nothing but a series of failures.

So, I'm now looking for some way to get the latest tvOS SDK (or at least one compatible with tvOS 12.3), and copy it into my current XCode, so I can get on with development?

  • You mean install the latest tvOS SDK with an older version of Xcode? Idk... I've tried the inverse (really old iPhoneOS SDK's on recent Xcode) and that didn't work out too well, but there is a way to extract and add SDK's manually just hold on a minute Jul 25, 2019 at 14:30
  • Yes, latest tvOS SDK with older Xcode is what I'm asking for.
    – Joe Strout
    Jul 25, 2019 at 15:04

1 Answer 1


This is obviously not supported and I don't know what wackiness may result from it, (some weird stuff happened when I did it myself) but this is where you find and put the SDK's for specific platforms in an Xcode version.

On the new Xcode (the one with the SDK that supports your device/OS/etc.) you can find the SDK bundle itself in


Then extract (copy) the tvOS version you want to work with, as well as the simulators if you want to, and put them in the same path in the version Xcode that you currently run. Restart to see if they show up as targets.

As I mentioned, this isn't supported at all, and you might face more than trivial issues, but it's a starting point.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .