ビルド手順
カスタム Electron バイナリの作成にあたって Electron そのも の をビルドするには、以下のガイドラインに従ってください。 アプリのコードをビルド済み Electron バイナリにバンドルして頒布する場合は、アプリケーション頒布 のガイドを参照してください。
プラットフォーム要件
続行する前に、以下から各プラットフォームのビルド要件を確認してください。
ビルドツール
Electron ビルドツール は、さまざまな設定やビルドターゲットを使ってソースから Electron をコンパイルするためのセットアップの多くを自動化します。 手動で環境構築する場合の手順は以下の通りです。
Electronは、プロジェクト生成にGNを用い、ビルドには ninjaを使用します。 プロジェクト設定は.gn
と .gni
ファイルを見てください。
GN ファイル
以下のgn
ファイルにはElectronのビルトのメインルールを含んでいます:
BUILD.gn
は、Electron 自身をどのようにビルドするかを定義し、Chromium とリンクするデフォルト設定を含んでいます。build/args/{testing,release,all}.gn
には、Electronをビルドするためのデフォルトのビルド引数が含まれています。
GN 要件
depot_tools
をインストールする必要があります。このツールセットは Chromium とその依存関係のダウンロードに使用されます。
更に Windows では、DEPOT_TOOLS_WIN_TOOLCHAIN=0
と環境変数を設定する必要があります。 これを行うには、コントロール パネル
→ システムとセキュリティ
→ システム
→ システムの詳細設定
を開き、DEPOT_TOOLS_WIN_TOOLCHAIN
環境変数を追加して値を 0
にします。 これはローカルにインストールされているバージョンの Visual Studio を使用するよ うに depot_tools
に知らせます (デフォルトで depot_tools
は Google 社員のみがアクセスできる Google 内部のバージョンをダウンロードしようとします) 。
git キャッシュのセットアップ
Electron を複数回チェックアウトする予定がある場合 (例えば複数の並列ディレクトリを異なるブランチにチェックアウトさせるなど)、git キャッシュを使用することでその後の gclient
呼び出しを高速化できます。 これをするには GIT_CACHE_PATH
環境変数を以下のように設定する必要があります。
$ export GIT_CACHE_PATH="${HOME}/.git_cache"
$ mkdir -p "${GIT_CACHE_PATH}"
# 16G ほどあります。
コードを取得
$ mkdir electron-gn && cd electron-gn
$ gclient config --name "src/electron" --unmanaged https://github.com/electron/electron
$ gclient sync --with_branch_heads --with_tags
# これはしばらくかかります。コーヒーでも飲みに行きましょう。
https://github.com/electron/electron
の代わりに、https://github.com/<username>/electron
のような自分のフォークを使うこともできます。
プル/プッシュ時の注意
もし将来公式の electron
レポジトリから git pull
や git push
をする予定であれば、現在はそれぞれのフォルダの origin URL を更新する必要があります。
$ cd src/electron
$ git remote remove origin
$ git remote add origin https://github.com/electron/electron
$ git checkout main
$ git branch --set-upstream-to=origin/main
$ cd -
📝 gclient
は、Chromium や Node.js のような依存の解決のために src/electron
フォルダ内の DEPS
と呼ばれるファイルを確認します。 gclient sync -f
を実行することで Electron のビルドに必要な依存関係をすべて取得します。
なので、プルするには、以下のコマンドを実行するとよいでしょう。
$ cd src/electron
$ git pull
$ gclient sync -f
ビルド
Chromium ビルドツール用の環境変数を設定します。
Linux と macOS の場合
$ cd src
$ export CHROMIUM_BUILDTOOLS_PATH=`pwd`/buildtools
Windowsの場合:
# cmd
$ cd src
$ set CHROMIUM_BUILDTOOLS_PATH=%cd%\buildtools
# PowerShell
$ cd src
$ $env:CHROMIUM_BUILDTOOLS_PATH = "$(Get-Location)\buildtools"
Electron の Testing ビルド設定は以下のようにして生成します。
Linux と macOS の場合
$ gn gen out/Testing --args="import(\"//electron/build/args/testing.gn\")"
Windowsの場合:
# cmd
$ gn gen out/Testing --args="import(\"//electron/build/args/testing.gn\")"
# PowerShell
gn gen out/Testing --args="import(\`"//electron/build/args/testing.gn\`")"