是否可以在旧 Xcode 上编译最新的 Swift 版本?

Posted

技术标签:

【中文标题】是否可以在旧 Xcode 上编译最新的 Swift 版本?【英文标题】:Is it possible to compile Latest Swift version on older Xcode? 【发布时间】:2017-12-06 15:55:20 【问题描述】:

例如,我会使用 Swift 4.2,但我不想使用 Xcode 10 beta 版本,我有 Xcode 9.4.1。

不知道有没有什么办法,可以吗?

【问题讨论】:

【参考方案1】:

我发现是的这是可能的。你可以通过安装最新的Snapshot来实现:

开发快照是自动生成的预构建二进制文件 从主线开发分支创建。

https://swift.org/download/#snapshots

Snapshot 是一个工具链,您可以将其安装到包含最新编译器的 Xcode 中,从而使您能够在最新工具上构建您的应用程序。


如何在 Xcode 中设置快照?

1- 从Swift website 下载最新的快照(Xcode)。

2- 安装下载的快照.pkg文件。

3- 运行 Xcode,然后转到:Xcode -> 工具链 -> 管理工具链。

4- 选择“组件”-“工具链”选项后,您应该会看到:

选择“Swift Developer Snapshot”就可以了!完成上述步骤后,您可能需要重置 Xcode。

提醒:你应该在玩完 Swift 4 之后重新选择“Xcode 8.3.3”选项,如Swift - Using Downloads 部分所述:

要提交到 App Store,您必须使用该版本构建您的应用 Xcode 中包含的 Swift。

【讨论】:

所以你在一分钟内想出了一个有据可查的答案? @Desdenova meta.***.com/questions/314165/… 提问和回答问题是 *** 的一部分 :) @Fogmeister 我的错。我很确定以前不是这样的。 @Desdenova 我在研究它之前和之后都问过这样一个问题,我想出了答案。我会分享它,希望对一些观众有用;我认为这没有问题...... 只是为了仔细检查,您可以使用任何 Xcode8 版本执行此操作还是有一定的要求?【参考方案2】:

虽然它不是直接来自 Xcode,但您也可以使用 Iswift,它应该具有最新的 swift 版本(最新快照)。

【讨论】:

以上是关于是否可以在旧 Xcode 上编译最新的 Swift 版本?的主要内容,如果未能解决你的问题,请参考以下文章

在 Apple Mac 服务器上编译 Objective-C [关闭]

xcode 在 10.7.4 上编译时看不到 sdl 框架

在 Mac OS 上编译 FFmpeg

Swift 4.2 新特性(译)

无法在 xcode 8.3.2 上编译 NEON 代码

在不同版本的 XCode 上编译和运行相同的代码以针对不同的 iOS 版本