shajii’s blog

主に技術ブログ

WSL2上でVSCodeを連携させSwift5.4をインストール

Windows10にWSLをインストールし、Ubuntuのセットアップ、VSCodeのインストールとWLSとの連携、Ubuntu 20.04 LTS上にSwift5.4をインストールするまでを記述する。

〇WSL(Windows Subsystem for Linux)の導入

MS公式のWSLインストールガイドを参考にインストールする。
本環境では、WSL2をインストールし、Linux ディストリビューションは最終的に Ubuntu 18.04 LTS を導入した。最初はUbuntu 20.04 LTS を選択したが、後述する依存関係にあるライブラリのダウンロードが、ディストリビューションのバージョンが原因で一部正常にインストールできないエラーが発生したため、 Ubuntu 18.04 LTS をインストールしなおした。
また、ガイド内では省略可能となっているWindowsターミナルもインストールしており、以降それらを使用している。
また、Ubuntuのセットアップには、こちらを参考に行った。


VSCode と WSL2 の連携

VSCodeを立ち上げ、左のバーの一番下にあるアイコンをクリックすると拡張機能画面が現れるので、「Remote WSL」をインストールする。

f:id:shajii:20210501163905j:plain

次に、左のバーの下から2番目にあるアイコンをクリックすると、WSLに接続するディストリビューションが出てくるので、右クリックして「connect」する。

f:id:shajii:20210501164346j:plain

するとWSLに接続したVS Codeを開くことができる。


〇Swiftのインストール

ここでの作業ディレクトリは、/home/yon/ とする。
まず、パッケージのアップグレードを行う。

$ sudo apt update 
$ sudo apt upgrade
次にこちら
Swift.org - Getting Started
に記載されてある各ディストリビューションで指定された依存ライブラリをインストールする。以下のコマンドで各ライブラリはインストール可能。
$ sudo apt install clang libicu-dev
完了後に指定のライブラリがインストールされてあるか確認
$ apt list | grep 各ライブラリ名


次にSwift.org - Download SwiftからSwiftをダウンロードする。ターミナルにて以下のコマンドを実行する。

$ wget https://swift.org/download/#releases/swift-5.4-RELEASE-ubuntu18.04.tar.gz
Swift ディレクトリを作成し、ダウンロードしたファイルを展開する。

$ mkdir Swiwork
$ tar -zxvf swift-5.4-RELEASE-ubuntu18.04.tar.gz -C Swiwork/

次にPATHを通す。
ホームディレクトリにある .bashrc という設定ファイル(bashを起動するたびに読み込まれる)がシェルの起動時に実行されるので、そこにパスを通すコマンドを追記

$ vi ~/.bashrc

最終行に以下を追加
PATH="/home/yon/Swiwork/swift-5.4-RELEASE-ubuntu18.04/usr/bin:$PATH"

以下のコマンドで設定を反映させる。

$ source ~/.bashrc

Swiftのバージョンが確認できれば完了。

yon@John:/home$ swift -version 
Swift version 5.4 (swift-5.4-RELEASE)
Target: x86_64-unknown-linux-gnu

試しにREPLで起動して Hello World を表示させてみる。

yon@John:~$ swift 
Welcome to Swift version 5.4 (swift-5.4-RELEASE).
Type :help for assistance.
1> print("Hello World");
Hello World

VSCode にてswiftファイルを保存して実行する方法も試す。
VSCodeprint("Hello World"); を記述してtest.swiftとして保存する。

コマンドラインにて実行して以下のように表示されれば成功。

yon@John:~/swiftproject$ swift test.swift 
Hello World


〇プロジェクトの作成、ビルド

プロジェクトディレクトtestを作成

$ mkdir test 
$ cd test

プロジェクトを作成

$ swift package init --type executable
ここでPackage.swift, README.md, Sources, Testsの4つが作成される。Sources/test/にソースファイルmain.swiftが配置される。
yon@John:~/test$ cat Sources/test/main.swift 
print("Hello, world!")

ソースファイルをビルドするには、以下のコマンドを実行。

yon@John:~/test$ swift build 
[4/4] Linking test

* Build Completed!

ビルドが成功すると、.build ディレクトリにデバッグ版の実行可能ファイルが生成される。

yon@John:~/test$ .build/debug/test 
Hello, world!

リリース版をビルドするには、以下のコマンドを実行。

yon@John:~/test$ swift build -c release 
[2/2] Linking test

* Build Completed!

yon@John:~/test$ .build/release/test 
Hello, world!


以上。


参考
https://qiita.com/mosh/items/c5c23fe6d4f1a9e4539e
https://qiita.com/YuheiTani/items/b8dd44a14324253498fc
http://docs.hatenablog.jp/entry/ubuntu-swift