您可以开发可在不同版本的 iPhone OS 或 Mac OS X 上部署并利用其功能的软件,包括与您正在开发的版本不同的版本。这种能力称为交叉开发。
为了利用交叉开发,您必须为您计划定位的操作系统版本安装 Mac OS X SDK。然后,在您的项目中,指定构建产品时要使用的 SDK。您还可以指定软件必须在其上运行的最早的 Mac OS X 版本。
在某些情况下,Apple 会为即将发布的操作系统版本分发 SDK 作为种子,让您可以在未来版本的 Mac OS X 向公众发布之前准备您的应用程序。
重要提示:Xcode 中的交叉开发需要原生目标。
要将您的 Xcode 项目设置为针对多个 Mac OS X 版本,请执行以下步骤:
选择一个 SDK。 在 Groups & Files 列表中选择您的项目,然后选择 File > Get Info。在 Project Info 窗口的 General 窗格中,从 Base SDK for All Configurations 弹出菜单中选择 SDK。当您选择一个 SDK 时,Xcode 会根据与指定操作系统版本相对应的一组头文件在您的项目中构建目标,并链接到该 SDK 中的存根库。这允许您在开发计算机上构建产品,这些产品可以在 SDK 所针对的操作系统版本上运行。您的软件可以使用系统版本中可用的功能,包括您选择的版本。
您还可以通过 Base SDK (SDKROOT) 构建设置指定 Base SDK。
选择 Mac OS X 部署版本。如果您的软件必须在一系列操作系统版本上运行,请为每个需要 Mac OS X 部署操作系统的目标选择一个 Mac OS X 部署操作系统。部署操作系统标识可以运行软件的最早系统版本。默认设置为 SDK 版本对应的操作系统版本。
为目标设置部署版本:
在 Groups & Files 列表中选择目标并打开 Info 窗口。单击构建以打开构建窗格。
b.找到部署目标 (MACOSX_DEPLOYMENT_TARGET) 或 iPhone OS 部署目标 (IPHONEOS_DEPLOYMENT_TARGET) 构建设置(取决于您正在开发的平台),然后从值列的弹出菜单中选择部署操作系统。
对于每个目标,提供一个考虑到所选 SDK 的前缀文件。 要将 SDK 中的伞式框架头文件用作前缀文件,请将适当的 #include 指令添加到目标的前缀文件而不是直接设置伞形框架标题的前缀标题路径。
成功开发适用于多个 Mac OS 版本的软件还有很多工作要做。如需了解更多信息,请参阅 SDK 兼容性指南。