WIN10编译chromium

编译chromium时遇到很多坑,特此记录。
编译日期:2020.12.25

官方文档

系统需求

贴一段官网上的系统需求

  1. A 64-bit Intel machine with at least 8GB of RAM. More than 16GB is highly recommended.
  2. At least 100GB of free disk space on an NTFS-formatted hard drive. FAT32 will not work, as some of the Git packfiles are larger than 4GB.
  3. An appropriate version of Visual Studio, as described below.
  4. Windows 10 or newer.

1. 安装depot_tools

depot_tools用来下载chromium代码:

  1. 下载depot_tools
  2. 解压到路径depot_tools;
  3. 将depot_tools的解压路径加到环境变量Path, depot_tools自带了Git和Python,如果自己安装了Git和Python,需要保证depot_tools在Path中的顺序在其之前;
  4. 在CMD中执行set DEPOT_TOOLS_WIN_TOOLCHAIN=0,目的是设置depot_tools使用本地安装的Visual Studio;
  5. 用CMD(不要使用PowerShell等其他命令行)执行命令gclient初始化;

2. 下载代码

打开命令行执行fetch chromium,总共有39G,等待下载完成。
遇到问题有:

  1. 下载代码时报错,此时src目录下没有文件,需要重新下载代码
  2. 下载代码时在Running hooks阶段报错,此时源码已经下载完成,只需解决错误重新执行gclient runhooks

我在Running hooks阶段遇到的问题如下:

 Running hooks:   6% ( 6/97) nacltools
 ...省略
 AssertionError: Unrecognized arch machine
 Error: Command 'vpython.bat src/build/download_nacl_toolchains.py
  --mode nacl_core_sdk sync --extract' returned non-zero

修改native_client\pynacl\platform.py:132行

# machine = machine.lower()
machine = 'x86_64' # 直接改成自己机器的 arch machine

3. 安装vs2019和win10 Debugging Tools

  1. 在官网上下载vs2019
    在这里插入图片描述

  2. 控制面板-程序-程序和功能-选择windows sdk-右键更改-勾选Debugging Tools for windows-change
    如果这种方式下载不动就去微软官网下载windows sdk安装程序单独安装Debugging Tools
    w10 debugging tools

4. 编译

  1. 在CMD中设置环境变量,根据自己电脑实际情况设置
    • set vs2019_install=D:\Program Files (x86)\Microsoft Visual Studio\2019\Community
    • set WINDOWSSDKDIR=D:\Windows Kits\10
    • set TMP=C:\Windows\TEMP
    • set NUMBER_OF_PROCESSORS=4
    • set DEPOT_TOOLS_WIN_TOOLCHAIN=0
  2. 执行命令 gn gen --ide=vs out/Default
  3. 可以修改out/Default/args.gn设置编译参数,我只设置了一个enable_nacl=false,设置多了编译容易出错
  4. 编译 autoninja -C out\Default chrome
  5. 等待…
    编译截图

5. 编译成功

chromium

6.使用vs2019调试

  1. 使用vs2019打开out/Default/all.sln
  2. 解决方案中右键chrome设置为启动项目
    start
  3. 添加启动参数 –single-process设置为单进程启动,不然可能进不了断点
    在这里插入图片描述
  4. 添加断点
  5. 点击 调试-开始调试 或者按F5快捷键启动调试,下图断点为解析HTML的地方,参数input为测试用的html文件内容
    debug

7. 结语

chromium工程太过庞大,可能每个人遇到的错误都不一样,需要根据错误信息解决实际遇到的问题。
如果本文帮助到了你,麻烦帮忙点个赞吧

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值