Linux環境でSwiftモジュールやSwiftコマンドラインツールを開発したい場合、2017-08現在、次の64bit OS環境が必要である。
その上で、さらにSwift.org: Download Swiftに書かれている通り、実行バイナリを自分で設置してPATHを通すと利用可能になる。
Swift本体は開発が活発で、有効なバージョンが多く存在するため、Linux環境でSwiftモジュールやSwiftコマンドラインツールを開発したければswiftenvを導入しておくと良い。
導入にあたっては、まずswiftenvをGitリポジトリから手元のHOME以下に設置する。
$ git clone https://github.com/kylef/swiftenv.git ~/.swiftenv
また、シェル起動時に swiftenv
コマンドにPATHが通るよう .bash_profile
や .zshenv
といったシェル設定ファイルに設定を追記する。
export SWIFTENV_ROOT="$HOME/.swiftenv"
export PATH="${SWIFTENV_ROOT}/bin:${PATH}"
eval "$(swiftenv init -)"
swiftenvを導入したら install
サブコマンドで利用したいバージョンのSwift本体をインストールする。
# Swift 3.1.1をインストール
$ swiftenv install 3.1.1
# インストールされているバージョンと現在有効になっているバージョンの確認
$ swiftenv versions
* 3.1.1 (set by /home/raimon49/.swiftenv/version)
これでLinux環境でもSwiftが利用できるようになった。
例えばSwift Package Managerで新しくモジュール開発を始めるコマンドを実行すると、macOSのXcodeに付属しているSwiftで実行した時と同様に、マニフェストファイルやユニットテストの雛形ファイルが生成される。
$ mkdir MySwiftModule
$ cd MySwiftModule
# Swift Package Manager用の雛形ファイルを生成
$ swift package init
Creating library package: MySwiftModule
Creating Package.swift
Creating .gitignore
Creating Sources/
Creating Sources/MySwiftModule.swift
Creating Tests/
Creating Tests/LinuxMain.swift
Creating Tests/MySwiftModuleTests/
Creating Tests/MySwiftModuleTests/MySwiftModuleTests.swift