构建 Chromium -- 太长,并且构建参数

构建 Chromium -- 太长,并且构建参数

我目前正在构建的 Chromium 耗时太长了——已经花了大约 12 个小时,距离完成还有 2/3 左右最好

......
[37717/51410] CXX obj/content/browser/browser/navigation_loader_interceptor.o
[37718/51410] CXX obj/content/browser/browser/navigation_url_loader_delegate.o
[37719/51410] CXX obj/content/browser/browser/navigation_url_loader.o
[37720/51410] CXX obj/content/browser/browser/prefetch_url_loader.o
[37721/51410] CXX obj/content/browser/browser/prefetch_url_loader_service.o

我遵循了官方的指示 -https://chromium.googlesource.com/chromium/src/+/main/docs/linux/build_instructions.md- 以及如何加快编译速度的建议。这是我为 NG 构建的标志

$ EDITOR=vim gn args out/my_build1
===>

is_debug = false
symbol_level = 0

dcheck_always_on = false
is_official_build = true
enable_nacl = false

blink_symbol_level = 0
v8_symbol_level = 0
chrome_pgo_phase = 0

也许,由于时间太长,它们还没有被应用?我该如何验证?

此外,说明书中没有描述顺序:

  • 是否必须打电话gn gen out/Default 第一的然后 gn args out/Default
  • 或者gn args out/Default 第一的然后 gn gen out/Default
  • 或者gn args out/Default单独地开始建造它。

哪一个?我可能搞错了顺序。


FF 大约需要 3 个小时才能编译完成。

答案1

Chromium 非常庞大,不要低估它。ARM Launchpad 构建器花了 100 小时才构建一次,但在 x86 中通常只需 8 小时。在这种情况下,12 小时并不荒谬(请注意,某些特定步骤可能需要很长时间,您可能会认为它卡住了),但您还没有公开您的机器硬件。就我个人而言,我不敢在我的计算机上构建它。

请注意,最后的链接需要大量内存。你不会希望等到它在步骤 51409/51410 时被 OOM 杀死。我会确保有 32 GB 的内存或限制并行作业(参见此修补,如果它要求您注册,请复制并粘贴链接,这是 Firefox 的一个错误)。

我可能搞乱了顺序。

可能是这样。请记住,GN 代表“Generate Ninja”,因此您应该先拥有gn args out/Default,然后拥有gn gen out/Default

gn gen --help

从当前树生成忍者文件

然而gn args --help

在编辑器中打开给定构建目录的参数。如果给定的构建目录不存在,则会创建该目录并在编辑器中打开一个空的 args 文件。

相关内容