OpenSource版Swiftをビルドしてみた
概要
OpenSource版のSwiftがリリースされたのでビルドしてみました。MacOSXであれば、ここの手順を参考にすると問題なくビルドできました。
環境は、MacOSX 10.11.1(EL Captain)です。
ビルド手順
ソースコードをダウンロードする
$ git clone git@github.com:apple/swift.git swift
上記メソッドは失敗したのでHTTPプロトコルで取得しました。
git clone https://github.com/apple/swift-corelibs-xctest.git git clone https://github.com/apple/swift-corelibs-foundation.git git clone https://github.com/apple/corelibs-xctest.git git clone https://github.com/apple/swift-package-manager.git git clone https://github.com/apple/swift-llbuild.git
シンボリックリンクを作成する
シンボリックリンクを作成しました。ビルドファイルにディレクトリ名が書かれているようなので必要な処理です。
ln -s swift-package-manager swiftpm ln -s swift-llbuild llbuild ln -s swift-lldb lldb ln -s swift-llvm llvm ln -s swift-cmark cmark ln -s swift-clang clang
必要なモジュールを準備する
brewでモジュールをインストールしました。
$ brew install cmake ninja
ビルドする
ビルド用スクリプトを実行します。-hでオプションが表示されます。必要に応じてオプションを追加してください。
$ utils/build-script
実行する
ビルドが成功すると、buildディレクトリが作成されます。ここに各環境用のバイナリが作成されます。
[build]$ ls -l Ninja-DebugAssert total 0 drwxr-xr-x 15 unokun staff 510 12 4 21:41 cmark-macosx-x86_64 drwxr-xr-x 27 unokun staff 918 12 4 21:41 llvm-macosx-x86_64 drwxr-xr-x 43 unokun staff 1462 12 4 21:41 swift-macosx-x86_64
ビルドしたモジュールを実行してみます。以下のようにバージョンが表示されれば成功です。
$ ./build/Ninja-DebugAssert/swift-macosx-x86_64/bin/swift -version Swift version 2.2-dev (LLVM 46be9ff861, Clang 4deb154edc, Swift bbab40abc2) Target: x86_64-apple-macosx10.9
Next Step
XCodeをつかってソースを編集できるようにする予定です。