Base versus Active versus Deployment target

The difference between the Base and Active SDK is that the former is the default SDK set for the project and the latter is the SDK you are currently building against. So it is possible for your Active SDK to be the Base SDK, at which point XCode will use the SDK you specified for the project.

In order to build your app for the widest set of devices possible, you are correct:

  • Set the Base SDK to the lastest SDK possible (3.0, 3.0.1)
  • Set the Deployment Target to the earliest SDK possible (2.0)

Apple does allow you to specify iPhone 2.0 as the Deployment Target, but keep in mind any API or framework released after iPhone 2.0 you will not have available to you for use by default. There are techniques to use features from later SDKs, however they are nontrivial.

Leave a Comment