tags:

views:

641

answers:

1

Hi there! I am having big problems since I downloaded the beta version of iPhone SDK 4.0. Okay, I just started to look at iPhone development a few weeks ago, but I cannot figure out how Xcode is supposed to work:

whenever I start a new project, I choose a template like "View-based application" or so. Now, the target will always (at least I did not find a preference anywhere!) be the latest SDK: 4.0. But then: switching the target back to, say, 3.1.3 the template files seem to contain errors! Starting an empty application this way yields an exception:

Terminating app due to uncaught exception 'NSUnknownKeyException', reason: [...] this class is not key value coding-compliant for the key rootViewController

Reason, it seems, is that the generated MainWindow.xib has a "referencing outlet" for rootViewController next to a viewController...

sick

Now, my (stupid) question: How do I develop an application NOT targeting the latest SDK, but the standard 3.1.3 SDK?? In other words: I would expect Xcode not only to ask for a project type in the New Project window, but also for my desired target platform to generate the correct templates!!

Am I right that the templates generated with this step are not valid for any other target than 4.0? How can that be??

...I want my Eclipse back! sigh

Can anybody help me please?

+3  A: 

Simple: don't use the beta SDK, which is intended at this stage for developing apps for an unreleased version of the OS, and about which you have agreed to a NDA.

So download the released version of the SDK, and be happy.

Paul Lynch
That might help in the current situation - but please: how does one develop ANY application for a lower version of the SDK in ANY Xcode version? What do I do when I want an even lower target SDK?I can't help but to struggle with Xcode - the crappiest IDE I've ever seen... :-(In a "normal" IT world I try newer releases of IDE's because I think there might be new features that are nice. In Apple's world does that mean I need to install the version of the SDK that was intended for a specific target? In other words: install several Xcodes???
Zordid
No, it means don't complain about beta versions and don't discuss them. And no, Xcode isn't the crappiest IDE, Eclipse is (criticising something you haven't made the effort to understand isn't smart). If you want to target a previous OS version, just set the base SDK in the target inspector - open the Target group, double click your application target, and type SDK in the search bar.
Paul Lynch