【Electron】使用 build-tools 在 Windows 中編譯 electron
阿新 • • 發佈:2022-05-07
【Electron】使用 build-tools 在 Windows 中編譯 electron
提前準備
- 預留好磁碟空間
- Git 快取目錄:%UserProfile%/.git_cache ,大概有 16G。
- electron_build_tools 目錄:%UserProfile%/.electron_build_tools,大概近 1G。
- 原始碼目錄:近 20G 。
- 安裝 Nodejs, 14.18.3 和 16.15.0 的版本都有編譯過。
- 安裝 yarn 模組
- 安裝 Visual Studio,勾選 “使用 C++ 的桌面開發”,可以在右側,順便把 Windows 10 SDK (10.0.20348.0) 勾選上。
- 安裝 Windows 10 SDK,版本號為 10.0.20348.0,需要包括 “Debugging Tools for Windows”,如果是通過 vs installer 安裝的,可以去 設定 → 應用 → 找到你的 windows software development Kit → 修改 → change → next → 勾選 “Debugging Tools for Windows” 就可以了
- 需要一個梯子,要下載 chrome 原始碼與工具的。
- 官方建議使用 cmd,但我使用 powershell 也沒問題
- 官方建議使用 cmd,但我使用 powershell 也沒碰到太多問題。
-
360
安裝 Electron Build Tools
npm i -g @electron/build-tools
初始化
e init --bootstrap testing
修改 DEPOT_TOOLS_WIN_TOOLCHAIN 配置
在windows上,要使用 msvc 來編譯,要設定 環境變數 DEPOT_TOOLS_WIN_TOOLCHAIN 這個為 0。才會使用本地的 msvc 版本,不設定這個會打包出錯的,但在 %UserProfile%/.electron_build_tools/src/utils/depot-tools.js 中會預設設定 DEPOT_TOOLS_WIN_TOOLCHAIN
我們可以找到 %UserProfile%/.electron_build_tools/configs/evm.testing.json 檔案,在 env 中加入
{
...
"env": {
"CHROMIUM_BUILDTOOLS_PATH": "K:\\sources\\electron\\src\\buildtools",
"GIT_CACHE_PATH": "C:\\Users\\gaosh\\.git_cache",
"DEPOT_TOOLS_WIN_TOOLCHAIN": 0 // 在這裡加上這麼一行就可以了
}
}
同步與構建
命令 | 說明 |
---|---|
e init | 建立一個新的構建配置,同時初始化一個 GN 目錄 |
e sync | 獲取 / 更新 / 同步 原始碼分支 |
e build | 構建 |
e start | 啟動 |
可以通過 e sync 來同步更新、 e build 來編譯
編譯啟動
通過 e start 來啟動。
參考文件
官方構建文件:https://www.electronjs.org/zh/docs/latest/development/build-instructions-gn
build-tools 文件:https://github.com/electron/build-tools