メインコンテンツへ飛ぶ

ビルド手順 (Windows)

カスタム Electron バイナリの作成にあたって Windows で Electron そのもの をビルドするには、以下のガイドラインに従ってください。 アプリのコードをビルド済み Electron バイナリにバンドルして頒布する場合は、アプリケーション頒布 のガイドを参照してください。

必要な環境

  • Windows 10 / Server 2012 R2 以上
  • Visual Studio 2019 (>=16.0.0) でビルドできますが、 Visual Studio 2022 (>=17.0.0) を推奨します - 無料で VS 2022 Community Edition をダウンロード
    • 必要な Visual Studio コンポーネントの情報については、Chromium ビルドドキュメント を参照してください。
    • Visual Studio がデフォルト以外のディレクトリにインストールされている場合は、いくつかの環境変数を設定してツールチェインがインストールパスを指すようにする必要があります。
      • vs2022_install = DRIVE:\path\to\Microsoft Visual Studio\2022\Community、このうち 2022Community をインストールしたバージョンのものに、DRIVE: をVisual Studio があるドライブに置き換えます。 大抵、このドライブは C: です。
      • WINDOWSSDKDIR = DRIVE:\path\to\Windows Kits\10、このうち DRIVE: を Windows Kits があるドライブに置き換えます。 大抵、このドライブは C: です。
  • Node.js
  • Git
  • 完全な頒布物を作成する予定があれば、Windows SDK 10.0.15063.468 の Windows 用デバッグツールで、.pdb ファイルからシンボルストアを作成するために symstore.exe を使用します。
    • 異なるバージョンのSDKを並行してインストールできます。 SDK をインストールするには、Visual Studio Installer を開いて 変更個別のコンポーネント を選択し、スクロールしてインストールする適切な Windows SDK を選択します。 他に、Windows SDK とエミュレータのアーカイブ を見て、SDK のスタンドアロン版をそれぞれダウンロードすることでもできます。
    • SDK デバッグツールもインストールする必要があります。 Windows 10 SDK が Visual Studio インストーラーを介してインストールされた場合は、次のようにしてインストールできます。 コントロールパネルプログラムプログラムと機能 → "Windows Software Development Kit" を選択 → 変更変更 → "Debugging Tools For Windows" にチェック → 変更。 または、スタンドアロンの SDK インストーラをダウンロードして、それを使ってデバッグツールをインストールすることができます。

現在 Windows インストールを持っていない場合、developer.microsoft.com に Electron をビルドするために使用できる Windows のバージョンがあります。

Electron のビルドは完全にコマンドラインスクリプトで行われ、Visual Studio では実行できません。 任意のエディタで Electron を開発できますが、将来 Visual Studio を使用したビルドがサポートされます。

注釈: Visual Studio はビルドに使用されていませんが、それが提供するビルドツールチェーンが必要なため、まだ 必要 です。

Windows Security からソースのツリーを除外する

Windows Security は Chromium ソースコード内のファイルを良く思わないようで (https://crbug.com/441184 を参照)、常にある特定のファイルを削除してしまい、gclient sync の問題を引き起こします。 こちらの手順に従う ことで、ソースのツリーを Windows Security の監視から除外できます。

ビルド

ビルド指示: GNを参照してください。

32ビットビルド

32ビットターゲット用にビルドするには、引数としてtarget_cpu = "x86" をGNに渡す必要があります。 32ビットターゲットと共に64ビットターゲットをビルドできます。それには別の引数を使って、out/Release-x86のような別のディレクトリに出力させられます。

$ gn gen out/Release-x86 --args="import(\"//electron/build/args/release.gn\") target_cpu=\"x86\""

他のビルド手順は全く同じです。

Visual Studio プロジェクト

Visual Studio プロジェクトを生成するには、--ide=vs2017 引数をgn genに渡します。

$ gn gen out/Testing --ide=vs2017

トラブルシューティング

Command xxxx not found

Command xxxx not found のようなエラーに遭遇した場合、開発者コマンド プロンプト for VS2015 コンソールを使用してビルドスクリプトを実行してみましょう。

Fatal internal compiler error: C1001

最新の Visual Studio アップデートがインストールされていることを確認してください。

LNK1181: cannot open input file 'kernel32.lib'

32ビット Node.js を再インストールしてください。

Error: ENOENT, stat 'C:\Users\USERNAME\AppData\Roaming\npm'

以下のようにディレクトリを作成すると 問題 は解決するはずです。

$ mkdir ~\AppData\Roaming\npm

node-gyp is not recognized as an internal or external command

ビルドに Git Bash を使用している場合は、代わりに PowerShell または 開発者コマンド プロンプト for VS2015 を使用する必要があります。

cannot create directory at '...': Filename too long

node.jsに長すぎるパス名があるようです。標準では、Windows版のgitは、長いファイル名をきちんと処理できません。 この問題を解決するには以下のようにします:

$ git config --system core.longpaths true

error: use of undeclared identifier 'DefaultDelegateCheckMode'

これは、Windows 用のデバッグツールが Windows Driver Kit とともにインストールされている場合においてビルド中に発生する可能性があります。 Windows Driver Kit をアンインストールし、上記の手順で Debugging Tools をインストールします。

ビルドスクリプトがキーを押さないと止まる

このバグは Windows コマンドプロンプトの「機能」によるものです。 簡易編集モード を有効にしたプロンプトウィンドウ内をクリックすると発生し、出力テキストを簡単に選択してコピーできるようにすることを目的としています。 誤ってクリックするたびにビルドプロセスが一時停止するため、この機能はコマンドプロンプトのプロパティで無効にできます。