ChromiumをWindowsでビルド

http://dev.chromium.org/developers/how-tos/build-instructions-windows
に従ってビルド。

  • Visual C++ 2010 をインストール
  • Visual Studio 2010のSP1 をインストール
  • Windows 7.1 SDK をインストール
    • Windows SDK 7.1用の コンパイラのインストール → 修正パッチ?
    • %USERPROFILE%/.gyp/include.gypi を作成
  • DirectX SDK をインストール*1
  • WDK 7.1.0 をインストール
    • WDKをインストールしたパスを環境変数に登録
  • DirectXとWDKのincとlibにパスを通す → Microsoft.Cpp.Win32.user.propsを編集。*2
  • depot_tools をダウンロード
    • 展開し、展開先を環境変数に登録
    • プロキシを使うために中のソースを少しいじる(後述)
  • ソースのtarball をダウンロード
  • ソースを展開したパスで “gclient runhooks --force”
  • ./src/build の中に"all.sln"ができるので、その中の“chrome”プロジェクトをビルド

ここまで、./src/build/Debug の中に“chrome.exe”ができた。

プロキシの設定

depot_toolsの中からもHTTPアクセスが行われるのでプロキシを通したい。depot_tools/bootstrap/win/get_file.js を書き換えるとできるらしい。
http://www.mail-archive.com/chromium-discuss@googlegroups.com/msg07983.html

まず、10行目あたりの、

    xml_http = new ActiveXObject("MSXML2.ServerXMLHTTP");

    xml_http = new ActiveXObject("MSXML2. ServerXMLHTTP.5.0 ");

に書き換え。次に17行目あたりの

    xml_http.open("GET", url, false);

の前に処理を追加。

    xml_http.setProxy(2, "IP:Port"); // <- これを追加
    xml_http.open("GET", url, false);

svnのプロキシを通す。
%UserProfile%/AppData/Roaming/Subversion/servers に、

[groups]
http-proxy-host = proxy1.some-domain-name.com
http-proxy-port = 80

を追加。というかすでにコメントアウトされたサンプルが入っていたのでそれを外しただけ。

*1:どのバージョンを入れればいいか分からなかったので一番新しそうな、“June 2010 DirectX SDK” をダウンロードした。

*2:一度VCでビルドをおこなうと“%LOCALAPPDATA%/Microsoft/MSBuild/v4.0/”直下に作成される。