【问题标题】:How to build Chromium faster?如何更快地构建 Chromium?
【发布时间】:2016-05-10 09:31:40
【问题描述】:

仅遵循此处的说明 - https://www.chromium.org/developers/how-tos/get-the-code 我已经能够成功构建并获得一个 Chromium 可执行文件,然后我可以运行它。

所以,为了学习目的,我一直在玩弄代码(向浏览器添加新按钮等)。因此,每次我进行更改(例如在设置工具栏中添加一个新按钮)并使用 ninja 命令进行构建时,都需要 3 多个小时才能完成,然后才能运行可执行文件。我猜它会再次构建每个文件。

我有一台运行 64 位 Ubuntu 的强大机器(i7、8GB RAM)。有没有加快构建速度的方法? (目前,我只是按照上述链接中的说明进行操作,没有其他优化来加快速度。)

非常感谢!

【问题讨论】:

    标签: google-chrome chromium


    【解决方案1】:

    如果您所做的只是修改一些文件并重建,ninja 只会重建受这些文件影响的对象。当您运行ninja -C ... 时,控制台会显示需要构建的目标数量。如果您只修改几个文件,那么高端应该是~2000(修改流行的头文件可能会涉及很多对象)。修改单个 .cpp 将导致仅重建该对象。

    当然,您仍然需要重新链接,这可能需要很长时间。为了使链接更快,请尝试使用组件构建,它将所有内容保存在单独的共享库中,而不是需要重新链接以进行任何更改的大型 onw。如果您使用的是 GN,请将is_component_build=true 添加到gn args out/${build_dir}。对于 GYP,请参阅this page

    您还可以仔细阅读 faster linux builds 并查看这些提示是否适用于您。不幸的是,Chrome 是一个庞大的项目,所以构建自然会很长。但是,一旦您完成了初始构建,增量构建应该是几分钟而不是几小时。

    【讨论】:

      【解决方案2】:

      按照此处最近更新的说明进行操作:

      https://chromium.googlesource.com/chromium/src/+/HEAD/docs/windows_build_instructions.md#Faster-builds

      除了使用组件构建之外,您还可以禁用 nacl、使用 jumbo 构建、关闭 webcore 的符号等。Jumbo 构建目前仍处于试验阶段,但它们已经有助于构建时间,并且会逐渐提供更多帮助。

      即使是巨型构建,完整构建也总是需要很长时间,但在许多情况下,组件构建应该让增量构建非常快。

      【讨论】:

      • 死链接已修复。
      【解决方案3】:

      对于在 Linux 上构建,您可以在以下位置了解如何更快地构建:https://chromium.googlesource.com/chromium/src/+/master/docs/linux_build_instructions.md#faster-builds

      其中大多数都需要添加构建参数。要编辑构建参数,您可以在以下位置查看 GN 构建配置:https://www.chromium.org/developers/gn-build-configuration

      您可以通过以下方式编辑构建目录中的构建参数:

      $ gn args out/mybuild

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-09-28
        • 1970-01-01
        • 2019-11-30
        • 1970-01-01
        • 2018-07-28
        • 2020-11-23
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多