Windows が Chrome ソース コードをダウンロードしてコンパイルする

序文

この記事では、chromium ソース コードをダウンロードしてコンパイルする方法について説明します。関連する前提条件については、公式ドキュメントを参照してください。

環境:

  • Windows 11
  • VS2022

環境設定

cmdを開いてプロキシを設定する

set http_proxy=http://127.0.0.1:7890 & set https_proxy=http://127.0.0.1:7890

注: cmd コマンド ラインを使用し、powershell は使用しないでください。

画像.png

depot_tools をダウンロード

depot_tools バンドルファイルをダウンロードして解凍します (例: C:\src\depot_tools)。

ここでは、パス D:\Code\chromium\depot_tools の下に置きます。

次に、環境変数を設定します

set path=D:\Code\chromium\depot_tools;%path%

クロムコードをダウンロード

vs2022_install という名前の環境変数を設定して、vs2022 のインストール パスを指定します。

set vs2022_install=D:\Program Files\Microsoft Visual Studio\2022\Community

ローカル VS コンパイルをセットアップする

set DEPOT_TOOLS_WIN_TOOLCHAIN=0

次に、次を実行します。

gclient

最初の実行時に、gclient は、msysgit や Python など、コードを使用するために必要な Windows 固有のビットをすべてインストールします。

次に、fetch --no-history chromiumダウンロードしたクロムコードを実行します

fetch --no-history chromium

--no-history通常、ダウンロードは使用状況によりすぐに完了します。

Updating depot_tools...
Downloading CIPD client for windows-amd64 from https://chrome-infra-packages.appspot.com/client?platform=windows-amd64&version=git_revision:6e9be28a4c4e3a804f400dc6c2ed08b866f0a38b...
Running: 'C:\Users\LMR\.vpython-root\store\python_venv-57g7dfur34kej3luifcgqdfurg\contents\Scripts\python3.exe' 'D:\Code\chromium\depot_tools\gclient.py' root
WARNING: Your metrics.cfg file was invalid or nonexistent. A new one will be created.
Running: 'C:\Users\LMR\.vpython-root\store\python_venv-57g7dfur34kej3luifcgqdfurg\contents\Scripts\python3.exe' 'D:\Code\chromium\depot_tools\gclient.py' config --spec 'solutions = [
  {
    "name": "src",
    "url": "https://chromium.googlesource.com/chromium/src.git",
    "managed": False,
    "custom_deps": {},
    "custom_vars": {},
  },
]

gclient syncただし、完全なコードをダウンロードする必要があります。

gclient sync

画像.png

お待ちください...その後、ダウンロード完了のプロンプトが表示されます。

画像.png

コンパイル

ダウンロードが完了したら、srcディレクトリに入り、buildディレクトリを設定します。

cd src
gn gen out/Default

画像.png

コンパイルを開始する

autoninja -C out\Default chrome

画像.png

その後、コンパイルが完了するまで待ちます。この間、CPU 使用率が非常に高くなるため、他の操作を実行することはお勧めできません。

コンパイル プロセス中に gbk エンコードに関する警告が表示される場合がありますが、これは無視できます。

画像.png

コンパイルが完了すると、D:\Code\chromium\src\out\Defaultパスに chrome.exe が表示されるので、クリックして実行します。

画像.png

これは、コンパイルが完了し、chrome.exe が正常に実行できることを示しています。

VSプロジェクトの生成

VS sln プロジェクトを生成できます。src\out\Defaultパスの下に all.sln プロジェクトがあります。

gn gen --ide=vs out\Default

次のコマンドを使用して、VS でプロジェクトを直接開きます

devenv out\Default\all.sln

クロムプロジェクトはサイズが大きいため、開く速度が遅くなります。

エラー解決

No downloadable toolchain found. In order to use your locally installed version of Visual Studio to build Chrome please set DEPOT_TOOLS_WIN_TOOLCHAIN=0.
For details search for DEPOT_TOOLS_WIN_TOOLCHAIN in the instructions at https://chromium.googlesource.com/chromium/src/+/HEAD/docs/windows_build_instructions.md

画像.png

エラーメッセージは明らかですが、その理由は設定がないためですset DEPOT_TOOLS_WIN_TOOLCHAIN=0

ダウンロードが失敗し続ける

最初に使用したダウンロード コードは常にダウンロードに失敗しましたが、コマンド ライン ツールWindows Terminalに切り替えるとダウンロードが成功しました。x64 Native Tools Command Prompt for VS 2022そのため、ネットワークの問題以外でダウンロードに失敗した場合は、端末を切り替えて試すことができます。Chromium のドキュメントには、非コマンド ライン (CMD) (cygwin、PowerShell など) から gclient を実行すると、問題なく動作するように見えるかもしれないが、msysgit、python、その他のツールは正しくインストールされないとも記載されています。

D:\Code\chromium>gn gen out/Default
ERROR Can't find source root.
I could not find a ".gn" file in the current directory or any parent,
and the --root command-line argument was not specified.

このエラーは、src ディレクトリが入力されていないために gn ファイルが見つからないために発生します。

画像.png以下のファイルをすべて削除しout\Default\obj\components\device_signals\core\browser、プロジェクトを再生成してコンパイルします。

gn gen out/Default
autoninja -C out\Default chrome

要約する

Chrome ソースコードをダウンロードする際には、ハードウェア要件に加えて、ネットワーク環境、特に家庭内ネットワークの要件もありますが、cmd コマンドラインを使用してダウンロードすることに注意すれば、基本的には問題ありません。

Chromium ドキュメント - Windows 用 Chromium のチェックアウトとビルド (googlesource.com)

おすすめ

転載: blog.csdn.net/no_say_you_know/article/details/133969562