我创建了这个社区Wiki,将我在此处看到的许多其他Q / A绑定在一起。如果您在此处,则可能已经安装了带有iPhone SDK 4的Xcode 3.2.3最终版本(下载链接,reg reqd),然后遇到了以下一个或两个问题:
在您先前使用的Xcode iPhone项目中,您会在某处看到“ Base SDK Missing”。像这样:
在一个相关但更普遍的观察中,以前查看设备或模拟器SDK选项(例如3.0、3.1、3.1.3等)不可用。
Answers:
我将解释为什么会这样,然后解决特定的“ Base SDK Missing”问题。尽管我建议阅读所有这些内容,但是您可以跳到最下面以获取解决方案。我还建议约翰Muchow的优良采取这个问题。
如果您对Xcode 3.2.4升级特别感兴趣,而Xcode 3.2.4升级有一个非常相关的问题,则可能需要在此处提出。
达成协议:现在,4.0是唯一允许提交新的或更新的仅iPhone应用程序的SDK版本。这直接来自Apple的iOS 4准备清单(reg reqd):
所有新应用程序和对现有应用程序的更新都必须使用iPhone SDK 4构建。请注意,App Store将不再支持针对iOS 2.x的应用程序。
大概-我猜这里-仅限iPad的通用应用应该使用3.2 SDK。这就是为什么4.0和3.2是SDK的唯一选择。
这也是您的项目现在被破坏的原因,因为先前已映射到该项目的SDK已弃用,即goss-ville。
放松。您仍然可以定位运行iPhone OS 3.0(但不能低于此版本)的设备。您用来编译的SDK不会(向下)限制您可以编程或支持的iOS版本。将项目中的内容修补好后(请参阅下一节),可以将“ iPhone OS部署目标”设置为较低的iOS版本。要快速了解如何执行此操作,请参见。下一节的第7步。
请注意,您现在正在输入一些棘手的地形。您通常的Xcode 3.2.3编译器将不再强制您仅执行3.0调用,也没有针对这些调用的模拟器。而且,如果您想支持4.0功能,则必须执行一些条件代码以防止在3.0设备上崩溃。好玩
您仍然可以下载(从Apple!)并安装以前的Xcode版本或SDK(请参阅此处)。是的,您可以在不同目录中安装多个Xcode版本,即在/ Developer中仅放置一个版本。您可以使用旧的Xcode与3.x SDK相比,测试应用程序的合规性,将繁重的工作移到精美的编译器和模拟器上。但是您不能再使用以前的SDK的产品来提交到应用商店。
FWIW,我计划在发货前仅进行此检查。
马特·加拉格尔(Matt Gallagher)在版本号为“有条件的iOS3,iOS3.2和iOS4代码的提示与技巧”的条件代码中有一条可可与爱的帖子。如果您打算有条件地使用4.0功能,则强烈建议您进行检查。
请按照上述步骤,但对于步骤2,请单击以下内容:
(此答案是对Sherman Lo的答案的稍加修改的版本)
如果您修复设置后仍然看到“缺少基本SDK”并且无法生成,请重新加载项目。我退出了Xcode,但是关闭并重新打开也可能有效。
Clay Bridges提供的下载Xcode和iPhone OS SDK早期版本的链接不起作用。但是,至少对于Snow Leopard链接(现在下载),编辑这些链接以将“ iphone”的第一个实例替换为“ ios”确实可行。
正确的链接,以及有关将较旧的iOS SDK安装到较新的Xcode中的信息,来自Chris Fletcher的博客文章:如何为xcode 3.2安装iphone sdk 2.0.3.1。强烈建议!