【问题标题】:How do I install a specific iPhone simulator SDK version in XCode?如何在 XCode 中安装特定的 iPhone 模拟器 SDK 版本?
【发布时间】:2015-06-19 07:53:33
【问题描述】:

几周前,我正在开发一个引用 iPhoneSimulator 8.2 SDK 的项目。今天我去继续做项目,突然我无法运行模拟器。我收到以下错误消息:

错误!在 `/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator8.2.sdk' 中找不到 iPhoneSimulator SDK 8.2

果然,那个目录下已经不存在模拟器SDK了。所以我打开 XCode,进入下载窗口,发现它不再安装了。我不知道这是怎么发生的,但我猜 XCode 会自行更新并删除它。因此,我再次下载并安装了 8.2 SDK。但是,当它完成时,我的项目仍然无法运行:我收到了完全相同的错误。检查文件系统后,我发现 XCode 实际上安装了 8.3 SDK,而不是 8.2,尽管 XCode GUI 说它安装了 8.2。

我正在运行 XCode 6.3(这很奇怪,因为我看到 6.3 是几天前才发布的,而且我一个多月没有安装或升级 XCode)。

有没有办法下载特定版本的 iPhoneSimulator SDK 并手动安装?

【问题讨论】:

  • 您“下载并安装 8.2 SDK”?你的意思是你下载并安装了 8.2 模拟器运行时?您在哪里看到此错误?

标签: ios xcode ios-simulator


【解决方案1】:

您在 iOS 模拟器中运行 iOS 模拟器运行时 您针对 iOS 模拟器 SDK 构建。

不幸的是,这令人困惑,因为 SDK 和运行时位于 Xcode.app 包内的同一位置。

您要做的是针对最新的 iOS 模拟器 SDK(Xcode 6.3 和 iOS 8.3)构建并在具有 iOS 8.2 模拟器运行时的模拟设备中运行您的应用程序。

您可以在 Xcode 中安装 iOS 8.2 模拟器运行时,方法是转到 Xcode -> Preferences -> Downloads。

【讨论】:

  • 下载中应该显示 8.2 RUNTIME。如果名称错误,我会检查并提交雷达。对不起,如果它被错误地命名和混淆。您只有一个 SDK,即 Xcode 附带的一个。它被称为 iPhoneSimulator.sdk 并具有与当前版本 (iPhoneSimulator8.3.sdk) 的符号链接。您可能需要更新您的 RubyMotion 项目以指向其中没有版本的路径。
  • 我将补充一点,将我的 rakefile 更改为指向 8.3 SDK 可以解决问题,但这意味着其他所有人都必须升级到 8.3 SDK。我不想这样做——我现在只想针对 8.2 SDK 进行构建。
  • 好的,是的,那是正确的。 “iOS 8.2 Simulator”安装 8.2 运行时。您不需要也不需要 8.2 SDK。您应该使用最新的 SDK。这听起来像是 RubyMotion 中的一个错误,它需要一个 SDK 版本号。将 8.2 更改为 8.3,并向 RubyMotion 开发人员提交错误报告以解决该问题。
  • 从 App Store 安装 Xcode.app 时会安装 8.3 SDK。安装“iOS 8.2 Simulator”时,会安装/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 8.2.simruntime。
  • 您更新的 Xcode.app 包括更新的 SDK(要链接的标头和库)和工具链(clang、ld64 等)。即使您确实在其中猛烈抨击了 8.2 SDK(不受支持),您仍然会使用与以前不同的工具链,这肯定需要更多的测试,而不仅仅是 SDK 更改。
猜你喜欢
  • 1970-01-01
  • 2012-10-12
  • 2016-02-17
  • 1970-01-01
  • 2012-01-21
  • 2011-04-04
  • 1970-01-01
  • 2015-11-15
  • 2012-03-20
相关资源
最近更新 更多