如何在 macOS Mojave 10.14.6 上运行 Xcode 11.4

Dav*_*ave 32 macos xcode ios

问题背景:

我有一部 iPhone 6s,它已经更新到 iOS 13.4。在 iOS 更新之前,我可以通过 Xcode 在设备上编码 + 运行我的应用程序,太棒了。

现在我无法在设备上从 Xcode 运行我的应用程序来测试我的代码,因为它说:

Xcode could not locate device support files
This iPhone 6s is running iOS 13.4 (17E255), which may not be supported by this version of Xcode. An updated version of Xcode may be found on the App Store or at developer.apple.com.
Run Code Online (Sandbox Code Playgroud)

所以我尝试安装最新的 Xcode (11.4),它现在说我必须将我的整个操作系统更新到 Catalina。

我不想这样做,因为我的系统运行良好,而且我听说过有关该版本的坏消息。

题:

有没有一种方法可以让 Xcode 构建到我的 iPhone 上,而无需更新我的整个操作系统并且可能会搞砸我的整台机器?

vad*_*ian 31

您无法在 Mojave 上运行 Xcode 11.4,但您可以添加对 iOS 13.4 的支持

  • 从此repo下载 13.4 映像
  • 退出 Xcode
  • 解压存档并将文件夹移动到 /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport
  • 启动 Xcode

考虑到这种方式只增加了对 iOS 13.4 的支持,没有别的。

更新:这不适用于 iOS 14,因为 iOS 14 需要 Xcode 12。

  • 我不建议从不受信任的来源下载文件来将这些文件添加到您的 Xcode 安装中。相反,直接从 Apple 下载 Xcode 11.4 并从那里提取“DeviceSupport”文件。这样,您就可以确信文件没有被修改。 (8认同)
  • 为什么苹果不公开这一点?谢谢你!祝您有美好的一天并注意安全。 (2认同)
  • 此方法也适用于 Xcode 11.3 上的 13.5,第一次运行可能需要 2-3 分钟才能启动 (2认同)

The*_*heo 27

这是不需要从不受信任的来源下载文件的替代解决方案:

  1. 安装在 Mojave 上运行的最新版 Xcode(当前为 Xcode 11.3.1)。它可以从 Apple 的开发者页面下载。

  2. 从同一页面,下载支持 iOS 13.4 的 Xcode 版本(例如 Xcode 11.4.1)。解压缩它,将它重命名为“Xcode-11.4.1.app”并将其移动到 Applications 文件夹,但不要运行它。

  3. 将 iOS 13.4 的符号链接从 Xcode 11.4.1 中的 DeviceSupport 文件夹添加到 Xcode 11.3.1,如Peter Steinberger 的 Gist 中所述

如果您使用此答案中使用的版本,则添加符号链接的命令将是

sudo ln -s /Applications/Xcode-11.4.1.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/13.4 /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport
Run Code Online (Sandbox Code Playgroud)

  • 为什么不将 iOS/tvOS 的 13.4 文件夹从 Xcode 11.4 复制到 Xcode 11.3.1 的工作副本? (6认同)
  • 当然,这也行得通。 (2认同)

Hir*_*aku 13

您可以在运行 10.14 的 Mac 上运行 Xcode 11.4 - 11.7。

  1. https://developer.apple.com/download/下载 Xcode 11.4 ~ 11.7
  2. 解压 .xip 文件,你会得到 Xcode.app
  3. 修改LSMinimumSystemVersionXcode.app/Contents/Info.plist从10.15.x 10.14
  4. 现在您无需升级到 Catalina 即可使用 Xcode 11.4 ~ 11.7。

然而,这个技巧不适用于 Xcode 12,它需要一些在 macOS Mojave 中不存在的框架。