2008-09-03、Google Chrome が公開された。リリースされたのは、Windows 版のみ。Mac / Linux 版はリリースされなかった。これらは現在、開発中とのアナウンスあり。
さて、ソース・コードだけは Mac 版も Linux 版も公開されている。
- Build Instructions (Linux) (Chromium Developer Documentation)
- Build Instructions (Mac OS X) (Chromium Developer Documentation)
上記 Instruction ページをちゃんと読むと、ソースをコンパイルしてもブラウザー「Chrome」が作られないことが分かる。
じゃあ、あのソースは何なのか。答え。いくつかのモジュールがコンパイルされて、そのユニット・テストが走る。それだけ。Linux/Mac 版のソース・コードは、サグラダ・ファミリアのやうに未完成のまま公開されている。
ドキュメントに目を通さずに、とにかくコンパイルしたらバグありありのブラウザーが出来るでせう。ドキュメントはコンパイルが終わったら精読しやう。なんて不埓な考えを持っていると、コンパイル終了後、Chrome の実行ファイルはどこ〜? なんて探し回る羽目になる。そして、ドキュメントを読み直して、がっくりと肩を落とす。
コンパイルするなら...
上に書いてあるやうなおバカをやってしまったのだけど、せっかくなのでコンパイルの手順だけ書いておく。ほとんど Build Instructions の訳だけど、よければどうぞ。
ちなみに、ぼくの環境は Ubuntu Linux 8.04。Google の Linux 用テスト環境も Ubuntu 8 (Hardy Heron) の変種とのこと。
準備
必要なソフトウェアは以下の通り。
- Subversion >= 1.4
- pkg-config >= 0.20
- Python >= 2.4
- Perl >= 5.x
- gcc/g++ >= 4.2
- bison >= 2.3
- flex >= 2.5.34
- gperf >= 3.0.3
- libnss3-dev >= 3.12
以下のコマンドで、これらのパッケージを全てインストールすることが出来る (Ubuntu 8.04 のパッケージは、上のバージョン条件を全て満たしている)。
$ sudo apt-get install subversion pkg-config python perl g++ bison flex gperf libnss3-dev
$CHROMIUM_ROOT
build ディレクトリーを $CHROMIUM_ROOT と呼ぶことにする。
depot_tools の入手
$ cd $CHROMIUM_ROOT $ svn co http://src.chromium.org/svn/trunk/depot_tools/linux depot_tools
tar ball も公開されてるけど、欠けてるファイルがあるそうな (tar ball を使う場合は Subversion 1.5 が必要になるとのこと)
depot_tools の解説もどぞ。
Chromium の Check out (スナップ・ショット編)
現在、暫定的な処置として、ソースのスナップ・ショットを公開している。そちらをダウンロードして欲しいとのこと。おそらく一斉にアクセスされて、過負荷になることを恐れているんでせう。
といふわけで、スナップショットのダウンロード。
ダウンロードしたら展開。
$ cd $CHROMIUM_ROOT $ tar xzvf ~/download/chromium.tgz $ mv chromium/src ./
Chromium の Check out (gclient 編)
スナップショットを使わない場合、次の操作を行なう。
$ export LANG=C $ ./depot_tools/gclient config http://src.chromium.org/svn/trunk/src checking out latest depot_tools... $ ./depot_tools/gclient sync (update が実行される...)
環境変数 LANG を C に設定するのは、gclient のためのおまじない。
コンパイル
コンパイルは 30 分もかからない。
$ cd $CHROMIUM_ROOT/src/chrome $ time ../third_party/scons/scons.py Hammer ... ... ../third_party/scons/scons.py Hammer 508.97s user 53.07s system 165% cpu 5:38.90 total
おまじないの解除を忘れずに。
$ export LANG=ja_JP.UTF-8
動かしてみる
実行ファイル (ユニット・テスト) は、$CHROMIUM_ROOT/src/chrome/Hammer に出来る。base_unittests と net_unittests を実行してみませう。
No comments:
Post a Comment