LoginSignup
1
0

More than 3 years have passed since last update.

Swift toolchainを使ってWindows10のSwiftビルド環境

Last updated at Posted at 2021-05-26
1 / 2

まえがき

Siwftを勉強したい、Swiftで競技プログラミングに参加したいあるいはアプリを作りたい。
しかし自分のマシンはWindows……
ということで、Windows10で必要な環境を整えることにしました。Mac買え
こちらはその備忘録になります。

2020年9月以降、WindowsでSwiftをビルド可能にするSwift toolchainが提供されています。
今回はそちらを利用していきます。

Swift公式のインストールガイド
https://swift.org/getting-started/

環境

Windows10 Home
(バージョン2004)

必要なもの

Swift toolchainの設定

流れに身を任せる。
Toolchainインストーラは一本道なので迷うことはないと思います。

VS 2019の設定

インストール
必須項目と推奨項目があるので、すべてに☑が入るようにします。
下記のワークロードを設定することで「Windows Universal C Runtime」と「Git for Windows」以外は設定されます。

  • Python 開発
  • C++ によるデスクトップ開発

「Windows Universal C Runtime」と「Git for Windows」は個別のコンポーネントから検索して設定します。
ただし、日本語環境では「Windows Universal C Runtime」は「Windows ユニバーサル CRT」という名前になっています。
(Universalで調べても出てきません……)

必須項目

No Component Visual Studio ID
1 MSVC v142 - VS 2019 C++ x64/x86 build tools (v14.25) Microsoft.VisualStudio.Component.VC.Tools.x86.x64
2 Windows Universal C Runtime Microsoft.VisualStudio.Component.Windows10SDK
3 Windows 10 SDK (10.0.17763.0) Microsoft.VisualStudio.Component.Windows10SDK.17763

※1,3に関してはこれより新しいバージョンであればOK

推奨項目

No Component Visual Studio ID
1 C++ CMake tools for Windows Microsoft.VisualStudio.Component.VC.CMake.Project
2 Git for Windows Microsoft.VisualStudio.Component.Git
3 Python 3 64-bit (3.7.8) Component.CPython.x64

※Git, Python3が既にインストール済みの場合は飛ばしてOK

サポートファイルの設定
設定ファイルを上書きします。
VS 2019のインストール時に同時にインストールされている「X86 Native Tools Command Prompt for VS 2019」を管理者権限で起動して、以下のコマンドを順に実行します。
※ 非常に残念ながら、VS 2019のインストールファイルを上書きしている関係上、Visual Studioのアップデート毎にこの作業をする必要があります。やはりMacを買った方が早いのでは?

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"

Python3を環境変数のパスに設定(VS 2019からのインストールまたは設定していない場合)
Python3のインストールをVS 2019のワークロードから行った場合、環境変数を別途設定する必要があります。

> path %ProgramFiles(x86)%\Microsoft Visual Studio\Shared\Python37_64;%PATH%

バージョンが確認できればOKです。

>python -V
Python 3.7.8

Windows10 May Update 2019以降Microsoft StoreにあるPythonインストーラに飛ばす環境変数が追加されています。
飛ばされた方は環境変数の優先順位を確認してみましょう。

世界にご挨拶

では、エンジニアご用達の例のやつをやってみましょう。

Swiftのバージョン確認
ここまでの設定ができていれば、コマンドラインからSwiftのバージョンが確認できます。

> swift --version
compnerd.org Swift version 5.4 (swift-5.4-RELEASE)
Target: x86_64-unknown-windows-msvc

ハローワールド
適当なフォルダに以下のファイルを作成します。

hello.swift
print("Hello, World!")

コマンドプロンプトでファイルのあるフォルダに移動して、コマンドを実行していきます。

>set SWIFTFLAGS=-sdk %SDKROOT% -I %SDKROOT%/usr/lib/swift -L %SDKROOT%/usr/lib/swift/windows
>swiftc hello.swift -o hello.exe %SWIFTFLAGS%

「ライブラリ hello.lib とオブジェクト hello.exp を作成中」と表示された後、同じフォルダにhello.exeが作成されているはずです。

実行すると……

>hello
Hello, World!

挨拶できました!

あとがき

というわけで
環境構築からハローワールドまでの備忘録でした。

提供が始まって半年とちょっと、まだまだ情報が少ないのでどなたかの参考になれば幸いです。

1
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0