如何更快地建立铬?

时间:2016-05-10 09:31:40

标签: google-chrome chromium

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

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

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

非常感谢你!

3 个答案:

答案 0 :(得分:8)

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

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

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

答案 1 :(得分:3)

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

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

除了使用组件构建之外,您还可以禁用nacl,使用巨型构建,关闭webcore的符号等。此时Jumbo构建仍然是实验性的,但它们已经帮助构建时间,并且它们将逐渐提供更多帮助。

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

答案 2 :(得分:2)

要在Linux上构建,您可以在https://chromium.googlesource.com/chromium/src/+/master/docs/linux_build_instructions.md#faster-builds

了解如何更快地构建

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

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

$ gn args out/mybuild