我对 Swift 在其他平台上的构建过程感到困惑。
Swift 是否允许我在 OS X 上构建 Linux 项目,或者我是否需要专门在 Linux 上使用 Swift 来构建我计划在那里使用的任何东西?
我查看了 documentation , 但这个话题还不是很清楚...
最佳答案
现在可以为 iOS、OS X 和 Linux 编译未导入任何框架的纯 Swift 应用程序。
你会生成不同的可执行文件,因为它是不同的平台,但代码源可以是相同的,只是需要针对各自的平台进行编译。
区别在于导入框架的时间。
如果您导入 UIKit 来制作 iOS 应用程序,显然您将无法在 Linux 上编译它,因为 Linux 没有那些 iOS UIKit 库,它们只能通过 Xcode 在 Mac 上使用。
如果您导入 Cocoa 来制作 OS X 应用程序,同样的逻辑适用,它只适用于 OS X。
同样,如果您导入特定的 Linux 库,例如 Glibc,则您可以制作仅在 Linux 上运行的 Swift 代码,这些库在 Mac 上无法运行。
等等等等
您需要记住的是,在为平台开发应用程序时,编程语言并不是那么重要,您所链接的框架和库才是决定性的。
不同的 Swift 版本带有不同的编译器(实际上是不同的工具链)所以要直接回答,不,你不能用普通的 OS X Swift 编译器为 Linux Swift 编译,你必须使用 Swift.org 的编译器。
关于linux - OS X 上的 Swift 为 Linux 编译?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35041483/