前言
Swift 長期定位為蘋果平台專用語言,但現在也可以在 Windows 和一些 GNU/Linux 發行版上使用了。本文介紹在 Windows 上編譯及執行 Swift 程式的方式。
系統需求
- Windows 10
- Visual C++ v14.25 以上
- Windows Universal C Runtime
- Windows 10 SDK
本文所列的開發工具皆為 Visual Studio 2019 的一部分。如果不會用到 Visual Studio 的 IDE,可以只裝 Build Tools for Visual Studio 2019。本文也是使用該 Build Tools 來建置 Swift 開發環境。
安裝所需的工作負載 (Workload)
下載該 Build Tools 的安裝程式後,點擊安裝。第一次安裝 Visual Studio 系列軟體時會先安裝 Visual Studio Installer,這是用來管理 Visual Studio 的軟體。然後,選擇以下工作負載:
- C++ 建置工具
- 通用 Windows 平台建置工具
其他的工作負載和 Swift 無關,請視需求自行安裝。
安裝 Swift
到 Swift 的官網下載 Windows 10 版本的安裝程式。
第一次啟動 Swift 安裝程式時會被系統擋掉,不要擔心,選擇「仍要執行」,然後就無腦按下一步即可。
必要的動作
裝好後,還要做一些必要的動作才能使用 Swift。對於推廣程式語言來說,這樣的動作實在不夠親民。
用系統管理者權限開啟 x64 Native Tools Commnad Prompt for VS 2019 (按右鍵),依序執行以下四行指令:
copy %SDKROOT%\usr\share\ucrt.modulemap "%UniversalCRTSdkDir%\Include\%UCRTVersion%\ucrt\module.modulemap"
copy %SDKROOT%\usr\share\visualc.modulemap "%VCToolsInstallDir%\include\module.modulemap"
copy %SDKROOT%\usr\share\visualc.apinotes "%VCToolsInstallDir%\include\visualc.apinotes"
copy %SDKROOT%\usr\share\winsdk.modulemap "%UniversalCRTSdkDir%\Include\%UCRTVersion%\um\module.modulemap"
Windows 10 的命令提示字元視窗支援複製貼上,所以不需手動慢慢輸入。
將 C:\Library\Developer\Platforms\Windows.platform\Developer\SDKs\Windows.sdk\usr\lib\swift\windows 內的 *.lib 拷貝到 C:\Library\Developer\Toolchains\unknown-Asserts-development.xctoolchain\usr\lib\swift\windows\x86_64 。
編譯第一個 Swift 程式
寫一個簡單的 Swift 程式來測試開發環境:
print("Hello World")
編譯後執行該程式:
> swiftc -o hello.exe hello.swift
> .\hello.exe
Hello World
目前 swift
指令暫時無法使用,希望 Swift 官方團隊能儘早修復這個問題。
目前碰到的問題
以筆者自身的測試來說,目前 swift
指令在 Windows 上是無法使用的,連帶 swift
的子指令 (subcommand) 也無法使用。由此可知,現階段在 Windows 上跑 Swift 程式其實不是那麼方便,或許還要一陣子才能達到真正能用的地步。