ビルド手順(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
インストールされているバージョンに合わせて2022
とCommunity
を置き換え、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インストーラーを開き、「変更」→「個別コンポーネント」を選択し、下にスクロールしてインストールする適切なWindows SDKを選択します。別の方法として、Windows SDKおよびエミュレーターアーカイブを見て、SDKのスタンドアロンバージョンをそれぞれダウンロードすることもできます。
- SDKデバッグツールもインストールする必要があります。Windows 10 SDKがVisual Studioインストーラーを介してインストールされた場合は、「コントロールパネル」→「プログラム」→「プログラムと機能」→「Windows Software Development Kit」を選択→「変更」→「変更」→「Windows用デバッグツール」をチェック→「変更」でインストールできます。または、スタンドアロンのSDKインストーラーをダウンロードして、デバッグツールをインストールすることもできます。
現在Windowsがインストールされていない場合は、developer.microsoft.comで、Electronをビルドするために使用できる期限付きのWindowsバージョンがあります。
Electronのビルドは、完全にコマンドラインスクリプトで行われ、Visual Studioでは実行できません。任意のエディタでElectronを開発できますが、Visual Studioでのビルドのサポートは今後提供される予定です。
注記: ビルドにはVisual Studioは使用されませんが、ビルドツールチェーンが必要なため、それでも**必須**です。
Windowsセキュリティからソースツリーを除外する
Windowsセキュリティは、Chromiumソースコードのファイルの1つを嫌います(https://crbug.com/441184を参照)。そのため、常に削除され、gclient sync
の問題が発生します。これらの手順に従って、Windowsセキュリティによる監視からソースツリーを除外できます。
ビルド
ビルド手順:GNを参照してください。
32ビットビルド
32ビットターゲットをビルドするには、GN引数としてtarget_cpu = "x86"
を渡す必要があります。異なるGNの出力ディレクトリ(例:out/Release-x86
)と異なる引数を使用して、64ビットターゲットと並行して32ビットターゲットをビルドできます。
$ gn gen out/Release-x86 --args="import(\"//electron/build/args/release.gn\") target_cpu=\"x86\""
その他のビルド手順はまったく同じです。
Visual Studioプロジェクト
Visual Studioプロジェクトを生成するには、gn gen
に--ide=vs2017
パラメータを渡すことができます。
$ gn gen out/Testing --ide=vs2017
トラブルシューティング
コマンドxxxxが見つかりません
コマンドxxxxが見つかりません
のようなエラーが発生した場合は、VS2015コマンドプロンプト
コンソールを使用してビルドスクリプトを実行してみてください。
致命的内部コンパイラエラー:C1001
最新のVisual Studioアップデートがインストールされていることを確認してください。
LNK1181: 入力ファイル 'kernel32.lib' を開けません
32ビットNode.jsを再インストールしてみてください。
エラー:ENOENT、stat 'C:\Users\USERNAME\AppData\Roaming\npm'
そのディレクトリを作成すると問題が解決するはずです
$ mkdir ~\AppData\Roaming\npm
node-gyp は内部コマンドまたは外部コマンドとして認識されません
ビルドにGit Bashを使用している場合、このエラーが発生する可能性があります。PowerShellまたはVS2015コマンドプロンプトを使用してください。
'...' にディレクトリを作成できません: ファイル名が長すぎます
node.jsには非常に長いパス名があり、デフォルトではWindowsのgitは長いパス名を正しく処理しません(Windowsがサポートしている場合でも)。これにより修正されるはずです。
$ git config --system core.longpaths true
エラー:宣言されていない識別子 'DefaultDelegateCheckMode' の使用
これは、Windows Driver KitでWindows用デバッグツールがインストールされている場合に、ビルド中に発生する可能性があります。Windows Driver Kitをアンインストールし、上記の手順でデバッグツールをインストールしてください。
ビルドスクリプトがキー入力までハングする
このバグは、Windowsのコマンドプロンプトの「機能」です。これは、QuickEdit
が有効になっている状態でプロンプトウィンドウ内をクリックしたときに発生し、出力テキストの選択とコピーを簡単にできるようにすることを目的としています。誤ってクリックするたびにビルドプロセスが一時停止するため、コマンドプロンプトのプロパティでこの機能を無効にすることをお勧めします。