为电子编译和构建铬浏览器

Ana*_*san 5 chromium electron

所以我正在开发一个电子应用程序。我知道电子在其核心运行铬浏览器。

我目前正在处理的用例之一涉及更改 Chromium 的源代码。我已经克隆了 Chromium 项目并进行了更改。现在可以使用我的 Chromium 版本来构建我的电子应用程序吗?

如果是,我该怎么做?如果不是,有哪些替代方案?

Ana*_*san 6

所以我必须基本上重建整个电子代码。

这里获取 libchromium 源

要修改电子内容模块中的代码,我们必须在 libchromium/patches 中编写补丁。然后构建 libchromiumcontent :

./scripts/bootstrap
./scripts/update
Run Code Online (Sandbox Code Playgroud)

使用以下命令编译和打包 libchromiumcontent:

./script/build
./script/create-dist
Run Code Online (Sandbox Code Playgroud)

构建完成后,记下包含您的补丁的 libchromiumcontent 提交的哈希值并执行以下命令,根据需要替换您的操作系统和架构:

# Use either win|linux|osx to reference the platform
mkdir -p osx/x64/<commit>
mv libchromiumcontent* osx/x64/<commit>
Run Code Online (Sandbox Code Playgroud)

然后使用我们自定义的 libchromiumcontent 构建 Electron:

如果您还没有完成,请克隆电子

git clone https://github.com/atom/electron && cd electron
Run Code Online (Sandbox Code Playgroud)

Bootstrap Electron 与我们的自定义 libchromium 内容:

./script/bootstrap.py -v --url file:///path/to/libchromiumcontent
Run Code Online (Sandbox Code Playgroud)

最后构建 Electron:

./script/build.py -c D 
Run Code Online (Sandbox Code Playgroud)

  • @MattTreichel 我最近这样做了,虽然要执行的具体命令有很大不同,但一般方法保持不变。克隆 Electron 存储库后,需要在“patches/chromium/”目录下创建补丁文件,并且该补丁文件的文件名需要附加到“.patches”文件中。然后,只需按照[官方 Electron 构建说明](https://www.electronjs.org/docs/latest/development/build-instructions-gn) 就可以开始了! (2认同)