Building WebKit on Ubuntu 15.04
Ubuntu GNOME 15.04 64bitでWebKit GTK portをビルドしてみる。
手順は公式サイトやWikiに書いてあるが、まとまっていない印象があるのでここでまとめておく。
The WebKit Open Source Project
WebKitのリビジョンは186705となる。
環境
UbuntuはVirtualBox上にインストールされている。
ホストマシンはi7-2600K、メモリ16GBで、 Ubuntuゲストには4コア、メモリ8GBを割り当ててある。
gccのバージョンは4.9.2となっている。
gcc --version gcc (Ubuntu 4.9.2-10ubuntu13) 4.9.2
最新のWebKitではgcc 4.9.0以上がビルドに必要となっているため古いUbuntuでビルドする場合は注意が必要である。
手順
ビルド準備
ソースコードをSubversionを使って取得する。
svn checkout https://svn.webkit.org/repository/webkit/trunk WebKit
cd WebKit
ビルドに必要なパッケージをaptを使ってインストールするスクリプトを実行する。
./Tools/gtk/install-dependencies
ビルドに必要なライブラリをインストールする。
./Tools/Scripts/update-webkitgtk-libs
このスクリプトはjhbuildを使っているらしい。
jhbuildが何をしているのか詳細は不明だが、Tools/gtk/jhbuild.modulesに記述されているソースコードをダウンロードし、ビルドを行っているようだ。
WebKitBuild/DependenciesGTK以下のSourceディレクトリにWebKit依存ライブラリのソース、Rootディレクトリ以下にビルド済みライブラリが作られる。
WebKitのビルド
GTK portをビルドする。
./Tools/Scripts/build-webkit --gtk
環境にもよるが、それなりに時間がかかるのでゆっくり待とう。
私の場合はmakeの並列ビルドオプションを使っている。
./Tools/Scripts/build-webkit --gtk --makeargs="-j4"
2015/07/22追記: 何も指定しなくても4コアで並列ビルドを行っていたのでmakeオプションは無指定にした。
実行
ビルドが終わると
To run MiniBrowser with this newly-built code, use the "Tools/Scripts/run-minibrowser" script.
なんてメッセージが表示されるので、そのまま実行すると、
Unsupported platform. at ./Tools/Scripts/run-minibrowser line 58.
とエラーがでる。
GTKオプションをつけて実行すればよい。
Tools/Scripts/run-minibrowser --gtk
このMiniBrowserというのはサンプルブラウザである。
MiniBrowserの実体及びビルド成果物はWebKitBuild/Release以下に作られる。
cd WebKitBuild/Release/bin ./MiniBrowser http://www.google.com
ソースの更新
./Tools/Scripts/update-webkit
デバッグモードでのビルド
./Tools/Scripts/build-webkit --gtk --debug