2010年11月08日

Ubuntu用Chromiumビルドログ

 Ubuntu Lucid 10.04 64bit用にChromiumをソースからビルドした。

+(0) はじめに
 私は作業用ディレクトリとして、ホームディレクトリ(/home/tanaka)にgoogleディレクトリを作成し、その中でビルドを行いました。ディレクトリ構成の例は以下の通りです。
 +/home/tanaka
  +google
   +chromium
   +depot_tools

+(1) 準備

[1] LinuxBuildInstructions

-64bit版Lucid 10.04 のインストール
 [2]Get Ubuntu Desktop Edition Download
 1. [2]から64bit版Lucid 10.04のイメージ(ubuntu-10.04.1-desktop-amd64.iso)をダウンロードする。
 2. ImgBurnでダウンロードしたイメージをDVDに焼く。
 3. DVDからUbuntuをHDDにインストールする。

 Ubuntuのインストールを扱ったサイトは多いので、詳しくはそちらを参照してください。
 私はHDDにインストールしましたが、仮想マシンにインストールしてもいいと思います。

-rootアクセス可能なアカウント
 1. rootアクセス可能なアカウントを作成する。
 2. 念のためアップデートを行い、再起動する。
~$ sudo apt-get update
~$ sudo apt-get upgrade
~$ sudo apt-get dist-upgrade
~$ sudo reboot


-必要なパッケージの取得
 
[3]LinuxBuildInstructionsPrerequisites

 [3]に書いてあるパッケージが必要です。スクリプトが用意されているので、それを利用しました。また、[3]には書かれていませんが、gitとsubversionが必要なのでそれらもインストールします。

 1. パッケージインストール用のスクリプトを実行する。
~/google$ wget http://src.chromium.org/svn/trunk/src/build/install-build-deps.sh
~/google$ sudo chmod +x install-build-deps.sh
~/google$ ./install-build-deps.sh
Do you want me to install them for you (y/N) y

Gold is a new linker that links Chrome 5x faster than ld.
Don't use it if you need to link other apps (e.g. valgrind, wine)
REPLACE SYSTEM LINKER ld with gold and back up ld? (y/N) y

 2. gitとsubversionのインストールする。
~/google$ sudo apt-get install git-core subversion

 3. 念のためアップグレードする。
~/google$ sudo apt-get update
~/google$ sudo apt-get upgrade


+(2) depot_toolsの取得
 [1]Install the depot_tools

 depot_toolsの取得方法はいくつかありますが、私はsubversionを使用しました。

 1. depot_toolsを取得する。
~/google$ svn co http://src.chromium.org/svn/trunk/tools/depot_tools

 2. パスを設定する。
~/google$ export PATH=`pwd`/depot_tools:"$PATH"

 頻繁にビルドするなら.profileにパスを設定したほうが良いと思います。

+(3) Chromiumのソースの取得

 1. 作業ディレクトリ(~/google/chromium)に移動する。
~/google$ mkdir chromium
~/google$ cd chromium


 2. gclientを設定する。
~/google/chromium$ gclient config http://src.chromium.org/svn/trunk/src
 chromiumディレクトリに.gclientファイルが作成される。
 3. .gclientを編集する。
solutions = [
 { "name" : "src",
   "url" : "http://src.chromium.org/svn/trunk/src",
   "custom_deps" : {
    "src/third_party/WebKit/LayoutTests": None,
   },
   "safesync_url": "",
 },
]

 custom_depsに"src/third_party/WebKit/LayoutTests": None,などを追加することで不要なファイルをダウンロードしないように設定できるようです。(注: 上記のコードはインデントのため全角スペースを使用しています。コピペして使用しないでください。おそらくうまく動作しません。)

 4. ソースを取得する。
~/google/chromium$ gclient sync

 ダウンロードには2時間程度かかった。ファイル数約5.6万、サイズ1.2GB

+(4) makeファイルの作成
~/google/chromium/src$ ./build/gyp_chromium


+(5) ビルド
~/google/chromium/src$ make -j8 BUILDTYPE=Release chrome

 Releaseビルドを作成する。-jXで並列実行するジョブ数を指定した方が速い。何も指定しないと1つのCPUコアだけしか使用されなかった。ビルドには30分程度かかり、ビルド後のchromiumディレクトリは約7.1万ファイル、2.1GB

+(6) 実行
~/google/chromium/src$ out/Release/chrome

 chromiumでもchromeというファイルが作成されました。


 作成されたchromiumのスクリーンショットの一部。

+(7) 後始末
 特に何も指定されていないので不要であればソースディレクトリごと削除しても問題ないはず。
~/google/$ rm -rf chromium

ラベル:Chromium google
posted by Tanaka at 00:01| Comment(0) | TrackBack(0) | 備忘録 | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。

この記事へのトラックバック
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。