Unity iPhone - Player Settings - iPhone SDK Version (missing)

Hi all,

Since upgrading my phone to OS 4.0 and updating Xcode and the iPhone SDK to the latest build, when I try and build and run from Unity, Xcode now has errors which states "Base SDK Missing". If i create a brand new Xcode project from scratch, it sets it just fine to 4.0

I figured to overcome this issue i would just need to go to Unity player settings and adjust the iPhone SDK Version to the new 4.0 but of course, it doesn't exist as an option. I seemingly have the most up to date version of Unity, so does anyone have any advice on how to overcome this problem? Also, i'd prefer to be able to build for compatibility with 3.x. Is this no longer possible? Will setting the SDK version to 4.0 mean anyone still on 3.x, won't be able to run my app?



I had this problem with the new Unity 3 Remote. Of course I couldn't rebuild it. A member of MacRumors Forums posted the solution:

In the Xcode project window click on the box that says "BaseSDK Missing" while holding down the option key and you will see a list of SDKs. Choose the one you want and the project will then build correctly.

You'll still need to check the settings in Info under General and Build to make sure they match the SDK you've selected.

I was able to install the Unity 3 Remote on both my iPhone 4 and my iPad.

Your project probably had a base SDK version of 2.x or so. The new SDK doesn't go back that far. Just change your base SDK version in Unity to like 3.1.3 or something, you should be fine.

To answer your last question, setting your SDK version to 4.0 would mean that you need 4.0 to run your game, unless you set your deployment target option to an earlier version. This is what people did to get 3.x features running for people with those operating systems but could still run on 2.x devices: http://developer.apple.com/mac/library/documentation/MacOSX/Conceptual/BPFrameworks/Concepts/WeakLinking.html

You shouldn't really need to worry about that, though, unless you are using some OS 4.0 specific feature.

You can select "Unknown" SDK in Player Settings and in such case Unity Editor won't touch active SDK of your Xcode project. (So your manual selection of SDK in Xcode will remain between builds).


I also had this problem in Unity 3 but from the XCode end as it is trying to load an older 4.0 SDK when I installed the 4.1 SDK

I got Base SDK missing errors.

Here is how I got it to work work:

After doing build & run from unity, XCode should have opened with its error:

  1. Choose Project --> Edit Project Settings. When a dialog appears, click the Build tab and change the value in the Base SDK from <4.0 missing> to iPhone 4.1.

  2. Choose Project --> Edit Active Target. When a dialog appears, click the Build tab and change the Base SDK option again

After doing that I could then Build & Run in XCode and after about 20 seconds the game (Penelope in this case) popped up on my iPhone all working perfectly.


After updating my iPhone to iOS 4.2 I began having the "Base SDK Missing" error in Xcode. I downloaded and installed the latest Xcode & iOS SDK (4.2), but continue to have issues with "Base SDK Missing" in Xcode...

I have had limited success following the solutions outlined above and throughout the web; however, now building my Unity project over wrights the Unity-Remote app on my phone!

This has been frustrating to resolve, and there seems to be no straight forward answers. Way too much ambiguity!

Thanks for your time

I've just bought Unity iPhone and am having the exact same thing as the last poster. It's very frustrating. Also I've installed SDK 4.3