Swift の Hello world を Fedora 23 x64 で動かすまでの作業メモ

手順は大まかに以下の3つ:

手順 1. Swift 処理系のソースからパッケージを作成する
手順 2. そのパッケージをインストールする
手順 3. Hello world 実行

 

 

1. Swift 処理系のソースからパッケージを作成する

Swift 公式サイトで配布されている処理系バイナリパッケージには Mac OS 用と Ubuntu 用とがある。Ubuntu 用のものはそのままでは Fedora で動かず、動くように改造するのは可能かもしれないが、おそらくライブラリ名やファイル位置の大掛かりな変更が必要となる。

今回は処理系ソースからパッケージをビルドする。Fedora 上でビルドする用のスクリプトが公開されており、これを利用させていただく。

手順 1-1. 仮想端末を新たに開き、以下これで作業する
手順 1-2. ビルド作業用ディレクトリを掘り、そこへ cd
手順 1-3. https://github.com/thawkins/fedora-swift から linuxpreset.ini と swiftbuild.sh をダウンロード
手順 1-4. swiftbuild.sh 冒頭の BUILDROOT を、現在のディレクトリ (つまり 1-2 で作成したもの) に書き換える
手順 1-5. $ unset LD_LIBRARY_PATH
手順 1-6. $ ./swiftbuild.sh setup
手順 1-7. $ ./swiftbuild.sh build
手順 1-8. パッケージが package/ ディレクトリに swift-linux-x86_64-fedora-年-月-日-○○.tgz といった名前で作られているのを確認する。
手順 1-9. (参考) パッケージのファイル名がコマンドライン上で扱いづらいため、ファイル名を swift-linux-x86_64-fedora-年-月-日.tgz に変更する。

1-1 は環境変数を 1-5 で一部いじるための措置。
1-6 では処理系ソースをダウンロードするため時間がかかる。
1-7 のビルドではマシンパワーが要り、やはり時間がかかる。

 2. そのパッケージをインストールする

手順 2-1. インストールディレクトリを掘り、そこへ cd する。今回は /usr/local/swift とする。
手順 2-2. $ tar xf パッケージファイル名
手順 2-3. $ cd usr/bin
手順 2-4. $ ln -s swift swift-autolink-extract
手順 2-5. /usr/local/swift/usr/bin を PATH に追加
手順 2-6. $ swift --version でバナーが出ることを確認
手順 2-7. $ swiftc --version でバナーが出ることを確認

 3. Hello world 実行

対話環境と実行ファイル作成の2通りの方法で Hello world を出力する。

手順 3-1. $ swift

対話環境を起動する。プロンプトが「  1> 」と出るはず。

手順 3-2. プロンプトに print("Hello world") と打ち込んでリターン
手順 3-3. Ctrl-D を入力し、対話環境を終了する
手順 3-4. 適当な作業用ディレクトリを掘ってそこへ cd
手順 3-5. エディタでファイル foo.swift を作成する。中身は「print("Hello world")」の1行のみ。
手順 3-6. $ swiftc foo.swift
手順 3-7. $ ./foo