chrouium Windows下编译

记录下:win10 AMD CPU 下载 Chromium 源码并编译(版本 103.0.5060.66) 只有看到我参考的文章,作者说是他的是amd的cpu,瞬间感觉自己的也可以,其实大学时候的笔记本是intel,但是内存只有12G,很旧了,弄了好久,最后也弄好了,就是编译和下载时候都很慢,编译时候cpu和内存都是爆满的。第三步,选择一个数字开头的,这样才会有这个tag标签,直接通过提交id,估计gitee镜像拉起代码时候找不到,但是tag肯定方便,文档也能方便,如果第一页没有,那就下一页,肯定能找到当前版本对应的数字tag版本。这方法我试了几次,都是下载到58%不行了,每次好几个小时下载,最后还是失败。 阅读详情

要学习chromium代码,搭建一个windows开发环境将会带来很多便利。本文就是讲述如何在windows系统上编译chromium。
Chromium 在windows下编译比较简单,只要配置好编译环境一般不会出现什么错误,下面就来看一下chromium windows下的编译过程吧。

编译要求

chromium windows下编译对电脑和网络都有要求:

  1. 网络要求
    需要能够访问google的网络,我们日常使用的天朝局域网是不可以的。而且网速还要可以,因为将要下载将近5个G的代码资源,如果网络不行,你估计要等到天荒地老。
  2. 配置要求:
    • 电脑CPU需要有4-8个核心,经实际验证双核的CPU也是可以编译的,只不过时间就要久太多,毕竟要编译1-2万个文件呢。我用的是台式机i74790 四核8线程处理器,整个编译过程大概2小时。
    • 内存要求16-32G,内存需求主要在链接过程中。实际编译8G的内存也是可以的,但链接过程需要40-60分钟,16G是20分。4G内存为尝试。
    • 至少50G的空余空间。
    • 最好使用固态硬盘,我没有固态硬盘不知道会有多少加成。
  3. 系统要求:
    • chromium windows编译要求操作系统必须是windows7 64位或以后版本的64位系统,32位系统不支持。
    • 操作系统的语言必须是英文,否则会上报“The file contains a character that cannot be represented in the current code page.”错误。

编译步骤

  1. 安装depot_tools
    depot_tools是chromium的编译工具,windows上安装过程如下:
    • 下载depot_tools,下载地址是:https://storage.googleapis.com/chrome-infra/depot_tools.zip
      或下载我之前下载的depot_tools,地址是https://yunpan.cn/cktYtW6THj5su 密码是686a
    • 将depot_tools.zip解压到一个目录,并将解压后的depot_tools目录加入到环境变量PATH中,并添加环境变量DEPOT_TOOLS_WIN_TOOLCHAIN,设置其值为0。
    • 打开cmd,执行gclient 命令初始化编译工具(会下载一些windows平台需要的程序),成功后的现象如图所示:
      这里写图片描述
  2. 安装VS2015 Update2
    Chromium 要求必须使用VS2015 Update2,所以安装VS2015 Update2是必不可少的。

  3. 修改系统语言
    如果你的系统是旗舰版可以在控制面板中修改系统语言,如果是专业版就要借助Vistalizator.exe软件修改系统语言。如果本来就是英文,可以忽略此步。
    成功切换英文后,可以再Control Panel -> Region and Language -> Change display language -> Administrative -> language for non-Unicode programs中确认是否是英文,如果不是点change system locale language修改。

  4. 编译代码

    • 下载代码
      创建一个文件夹如:E:\chrouium。注意文件路径中不要出现空格。
      打开控制台(cmd),进入刚刚创建的文件夹,执行命令:

      fetch --no-history chromium

      这条命令就是下载代码,其中–no-history是不下载历史记录,如果不加这个选项你将下载近17G的代码。这个命令的执行时间取决于你的网速,一般需要1小时作用。
      或者下载我之前下载的代码,这个代码不是最新代码:https://yunpan.cn/cktY7pTGrx3jG 访问密码 2fcc。下载后解压后即可执行后续命令。

    • 建立工程
      下载完成后执行以下命令:

      gclient runhooks
      cd src
      gn gen --ide=vs --filters=//chrome out\Default

      即可在src\out\Default 目录下生成all.sln文件,就是建立的工程文件。

    • 编译代码
      使用VS2015打开all.sln,找到chrome 工程,右键选择build即可开始编译。
      首次编译过程一般会持续两个小时以上,编译完成后按F5即可开始调试。(温馨提示:编译过程中关闭杀毒软件可以快一点哦)
%DUMP SESSIONS--List Windows Sessions 阅读详情

相关推荐

chromium 109在windows系统的构建步骤

Chromium 109在Windows系统上的构建非常简单,你可以通过以下步骤完成:1. 下载Chromium源代码;2. 从Chromium源代码中构建Windows系统版本;3. 使用Visual Studio编译Chromium;4. 在Windows系统上运行Chromium。 ...

weixin_42599558的博客 326

Chrome 和 Chromium 区别

Chromium Chromium 官网:https://www.chromium.org Chromium 源码:https://github.com/chromium/chromium Chromium是谷歌的开源项目,由开源社区维护,拥有诸多尖端优势。 拥有众多的版本包括Windows、Mac、Linux,几乎每天都在进行更新,版本不稳定。 国产的所有 “双核浏览器”,都是基于 C...

阳光岛主 8万+

Chromium编译指南2024 Windows11篇-开始编译Chromium项目(七)

在上篇文章《Chromium编译指南2024(六)》中,已经完成90%的准备工作了现在,我将正式开始编译Chromium项目了!至此,我们完成了Chromium项目的完整的编译流程,并且获得了一个独属于你的Chromium浏览器。恭喜做到这里第一阶段完成了,下面会进入第二阶段如何调试。

守城小轩的技术窝棚 7381

Windows编译Chromium

在上一节,我们翻山越岭终于下载了chromium代码,是时候来编译它了。 本文基于Windows平台和VisualStudio进行chromium编译。 Window 环境设置 必须是Window 7 64位及以后版本,不支持32位系统。 控制面板 - 时钟、语言和区域 - 区域和语言 - 管理 - 更改系统区域设置 - 英语(美国) 如果不设置成英语,可能会有编译错误"The file

张雄伟 3771

MyBatis的Mapper接口以及Example的实例函数及详解

一、mapper接口中的方法解析mapper接口中的函数及方法 方法 功能说明 int countByExample(UserExample example) thorws SQLException 按条件计数 int deleteByPrimaryKey(Integer id) thorws SQLException 按主键删除 int deleteByExample(U

biandous的博客 15万+

Chrome调试骚操作

看了掘金小册的Chrome 调试技巧篇章,受益匪浅,特总结如下 element 1. 截屏新姿势(实用指数:

zlear小窝 677

离线编译chromium 59.0.3071.104,方法适合任意版本

离线编译chromium 59.0.3071.104,方法适合任意版本离线编译任意版本chromium准备修改运行&编译可能出现的问题及解决 离线编译任意版本chromium 没错, **离线 **且 **任意版本 ** chromium。离线还是要下载必要的代码的,但是可以分步进行,极大的提高编译成功率。 准备 chromium在墙内的git地址可以直接访问 https://github...

zweric的博客 4185

顺序表(Sequential List)详解:从数组到 C 语言实现

顺序表是用连续存储单元依次存储数据元素的线性结构,数组则是其最常见的实现方式,两者本质相同、仅视角不同——数组关注物理存储,顺序表关注逻辑关系。顺序表支持随机访问 $O(1)$,但插入删除需移动元素,效率为 $O(n)$。本文用 C 语言静态数组完整实现了顺序表的初始化、增删改查操作,帮助初学者在不涉及指针的前提下理解其核心原理,为后续学习动态顺序表打下基础。

Guangyu536的博客 305

windows 驱动实例分析系列: HidHide驱动分析-HidHideCLI 篇(三)

`HID.cpp` 模块实现了完整的设备枚举与信息采集,这些功能与 GUI 版本共享相同的核心逻辑,但在输出格式上存在差异——CLI 版本输出 JSON,而 GUI 版本填充树形控件。

王马的博客 128

windows 驱动实例分析系列: HidHide驱动分析-HidHideClient 篇(中)

`CWhitelistDlg` 是主对话框中的应用标签页,负责管理**白名单(Whitelist)**——即允许访问隐藏设备的应用程序列表。用户可以通过"插入"按钮选择可执行文件,或直接通过拖放(Drag & Drop)将 `.exe`、`.com`、`.bin` 文件拖入列表,从而实现快速添加。该对话框同时提供"删除"按钮移除选中条目,以及"反转白名单"复选框用于切换逻辑模式。

王马的博客 842

【回溯】【中等】全排列/子集/电话号码的字母组合/组合总和/括号生成/单词搜索/分割回文串

【待更新】

2301_81831660的博客 46

cmake教程

单/多个源文件、不同目录下的源文件、组织架构(源文件/头文件/对象文件/elf文件/库文件)、库的编译控制与链接(.so/.a)、编译选项、控制选项(生成部分文件/编译部分代码)

Wangshijie1015的博客 55

Qt的常用类QList--序列数据管理

因此可以采用下标来进行索引进行快速的访问。而QVector是Qt对所有数组的封装,它元素的存储位置彼此相邻,也就是说它是以数组的形式进行存储的,它的插入删除操作常常伴随着内存的移动,所以效率上并没有QList高。QlinkList我们可以把它当成一个链表,它以非连续的内存块进行保存数据,所以它不能使用下标进行访问,它更适合于数据的插入操作。通过list.at()函数和下标,它的区别就是通过下标的时候,QList会对它的数据进行一次拷贝,也就是内存的一次复制,所以我们通过下标这种方式效率不高。

qq_42831443的博客 102

75 条文章索引被一条 add 清成 1 条,退出码还是 0:tri-article 的 index.py 我读了 205 行

以一次真实清库事故切入,逐段复现 tri-article 索引脚本的三处静默失败并给出可运行加固代码(严格加载抛错、原子写 os.replace、长度差预筛的软去重)。附带 dedup 省略 --slug 时判定退化为「slug 长度 ≤2」、search 只搜 title、真实 75 条索引中 6 条在 domain 维度不可达、save_index 零调用等实测结论,并用 65/75 的哈希自证说明历史失配来自改标题未回写。

三声三视的博客 152

33 链表排序

给你链表的头结点head,请将其按排列并返回。[1,2,3,4]head = [][]你可以在O(n log n)时间复杂度和常数级空间复杂度下,对链表进行排序吗?

weixin_52079669的博客 206

Mybatis的多表操作问题

Q1 :一对一表关系之中哪个属性封装到<ResultMap>中?哪一个封装到<association>当中?Q2:一对多表关系之中哪个属性封装到<ResultMap>中?哪一个封装到<collection>当中?A:主要看谁包含谁,例如:一个用户 (User) 持有一张身份证 (IdCard)所以把OrderList封装进collection中。一个用户名下的所有订单。

m0_57532232的博客 221

Kali 字典攻击|口令爆破与目录爆破实战笔记

字典攻击属于优化版穷举攻击,不盲目暴力遍历所有字符,使用高频口令字典逐条尝试验证。✅字典攻击三要素目标接口:SSH、FTP、RDP、Web登录表单、数据库等接受账号密码校验的服务字典文件:纯文本,一行一条用户名/密码候选判定依据:响应状态码、页面关键字、响应长度、响应时间💡成功率取决于:字典质量 + 目标防护策略(限流、账号锁定、验证码)。

若谷的博客 414
上一篇: 常用数据压缩库的编译与使用
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值