Question

I am having trouble with the new 4.1 for iPad. I want to still compile against 3.2. Do I set the base version in the project settings? If so, why is it marked as missing? How do I get it and where do I put it?

Sorry a lot of questions there but they have changed the way drawing works and I don't want to change my whole app right now. My app when compiled against 3.2 works on 4.1 iPads fine, but not when compiled against 4.2. Is this because when you compile against an iOS version it imports the frameworks from that iOS version?

Was it helpful?

Solution

yeah unfortunately Apple are doing everything to "unmarket" any previous versions of iOS.

After you update your XCode with the latest version usually you see "Base SDK missing" and you need to update your project configuration to get it compiling again. Double click the project item in your project tree (or right click it and choose Get info) and in the properties windows choose the tab called "Build" (make sure you have "All configurations" selected in the Configuration select box), then find the "Base SDK" property - this is the version of iOS which you are targeting (apple usually make sure to be able to select only the latest iOS version here), then find the property called "iOS deployment target" - here you select the earliest version of iOS you will support - choose here 3.2 in your case.

There you go :) Just couple of notes:

  • when you make those changes to the project properties, you might need to close XCode and run it again and open the project again - sometimes it does work right after you change your project properties

  • if you support 3.2 make sure that if you add frameworks from 4.x to your project you soft link them, so it doesn't crash under 3.2 bcz the frameworks don't exist on the device

Marin

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top