Chromium编译指南2024 Windows11篇-编译前的准备工作和Visual Studio安装(一)

前言

在这个数字化快速发展的时代,浏览器不仅是我们获取信息的窗口,更是开发者表达创意和技术实力的舞台。

Chromium是由Google于2008年发起的开源浏览器项目,致力于为用户提供更快、更安全、更稳定的网页浏览体验。

其作为开源浏览器项目的佼佼者,不仅支撑了众多主流浏览器,如Google Chrome、Microsoft Edge、Opera、Brave和Vivaldi等。更成为了前沿技术实践和创新的源泉。

深入Chromium的世界,你将有机会接触到浏览器技术的最前沿,掌握构建现代网络应用的关键技能。

此刻,你正站在一个新的起点,准备探索无限的可能。

这个系列我会持续更新,后面规划包括:

MAC的编译,调试。预计上到Chromium124。

LINUX的编译,调试。

有需求的同学可以私信我。

ANDROID平台

CEF新版本


1. 编译前的准备

  • 硬件和软件需求
    • 具有至少 8GB RAM 的 64 位 Intel 计算机。强烈建议 16GB 以上。
    • NTFS 格式的硬盘上至少有 100GB 的可用磁盘空间。不能使用FAT32格式 ,因为某些 Git 包文件大于 4GB。
    • Windows 10 或更高版本。
  • 相关文档
    • Google官方文档- https://chromium.googlesource.com/chromium/src/+/main/docs/windows_build_instructions.md
    • Visual Studio 2022 - Visual Studio 2022 Release Notes | Microsoft Learn
    • Windows 11 SDK - Windows SDK - Windows app development | Microsoft Developer

2. 目前122版本Chromium需要Visual Studio 2022 (>=17.0.0) ,我们选择社区版(Community)即可

如果一直没有开始下载,可以点击红框部分重试。

允许UAC权限请求

点击继续开始初始化Visual Studio Installer工具

等待Visual Studio Installer工具,下载/初始化完成需要的资源

我们勾选“使用C++ 桌面开发” 组件,可选组件目前保持默认即可

在右侧的侧边栏中,“使用C++ 桌面开发”下的可选子组件,请勾选添加 “MFC/ATL 支持”和“Windows 11 SDK” 子组件(红框标记);黄色高亮的子组件,在有调试Chromium需求的情况下需要安装。

PS:当然您可以随时重新启动Visual Studio Installer工具,使用修改功能更改这些配置~

等待Visual Studio Installer工具,完成所选组件的下载及安装。

OK!我们完成了Visual Studio和相关依赖组件的安装~

3. 安装Windows 11 SDK

当然,如果您在安装Visual Studio的过程中勾选安装了Windows 11 SDK ,可以跳过此章节。

我们编译Chromium 122 需要 10.0.22621.2428版本的Windows 11 SDK ,红框中的是下载地址,一个是在线安装器,另一个是离线安装镜像,方便没有没有网络的情况下安装。

我们这里以离线安装镜像安装为例子,在线安装器也是一样的逻辑。

点击Continue 继续

选择Windows 11 SDK 安装路径,建议使用默认路径,这样可以免去一些奇怪的问题。

其他默认即可,请确保勾选 Debugging Tools for Windows 工具,此工具是调试Chromium的必备组件

等待安装器下载安装完毕

4. 安装Windows 11 SDK 调试工具

当然,如果您在安装Visual Studio的过程中勾选安装了Windows 11 SDK ,可以跳过此章节。

此工具再您需要进行chromium调试的时候需要安装,具体步骤可以参考章节2.2

    • 需要10.0.22621.755 或更高版本
    • 此版本的调试工具来支持读取大页面 PDB,Chrome 使用该大页面 PDB 来允许大于 4 GiB 的 PDB。

5. 结尾

通过这些步骤,您已经完成了安装了Visual Studio 2022以及所需的Windows 11 SDK和调试工具。

下一篇文章将会继续介绍如何配置depot_tools工具,这是Chromium开发过程中不可或缺的重要工具之一。它将帮助您管理Chromium代码库,进行版本控制和代码同步,为您的开发工作提供便利和支持。敬请期待!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/10668.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

实验八 Linux虚拟内存 实验9.1:统计系统缺页次数成功案例

运行环境: VMware17.5.1 build-23298084Ubuntu 16.04LTS ubuntu版本下载地址Linux-4.16.10 linux历史版本下载地址虚拟机配置:硬盘一般不少于40G就行 内核版本不同内核文件代码也有出入,版本差异性令c文件要修改,如若要在linux6.7…

指针(5)加油吧

指针(5) 拿冒泡排序来举例: 1 .qsort void qsort (void* base,//base指向待排序数组的首元素的指针size_t num,//base指向数组中元素的个数size_t size,//base指向的数组中的一个元素的大小,单位是字节int(*cmp)(const void*,co…

HR人才测评,表达能力与岗位胜任力素质测评

什么是表达能力? 表达能力指的就是在语言能力基础之上发展形成的一种语用能力,可以结合自己所掌握的语言来实现交际的目的,能正确且灵活的把语言材料组合成为语言并且表达出想要表达的内容。 在百度百科中有如此定义,表达能力…

人工智能能否解决科学问题:Wolfram的视角

引言 在当今AI技术飞速发展的背景下,它在科学研究领域的应用正逐渐深入。从AlphaFold 3的推出到日益复杂的计算模型,AI似乎在向科学家的角色靠拢。然而,美国计算机科学家Stephen Wolfram在一系列讲座和文章中提出了反思:AI真的能…

如何给扫描好的3d模型贴图?---模大狮模型网

在数字化设计领域,3D模型的贴图是提升模型逼真度和视觉效果的重要步骤之一。尤其是对于扫描好的3D模型,通过添加适当的贴图,不仅可以增强模型的细节和真实感,还可以为设计带来更加生动的视觉体验。本文将为您详细介绍如何给扫描好…

算法详解——回溯法

一、回溯法概述——问题背景 回溯法是一种解决约束满足问题的方法,特别适用于解决组合问题、搜索优化问题等。它通过逐步构建候选解决方案并且在这个解决方案不再可能满足约束或条件时进行剪枝和回溯。具体来说,回溯法可以应用于以下类型的问题&#xff…

基于yolov5+gradio目标检测演示系统设计

YOLOv5与Gradio:目标检测可视化展示的新篇章 随着人工智能技术的深入发展,目标检测已成为现代智能应用中的一项关键技术。YOLOv5,作为目标检测领域的杰出代表,凭借其出色的实时性和准确性,赢得了广泛的认可和应用。而…

AI视频教程下载:用ChatGPT自动化各种工作任务

这是一门实用的无代码课程,旨在通过使用ChatGPT高级数据分析和代码解释器提高生产力。 通过让ChatGPT代码解释器创建程序来自动化单调的任务,提高您的计算机生产力。 这门课程专为那些渴望快速使用小型实用程序的人设计,不需要编程知识。相…

Java医院绩效管理应用系统源码java+ maven+ avue 公立医院绩效考核管理系统源码 支持二开

Java医院绩效管理应用系统源码java maven avue 公立医院绩效考核管理系统源码 支持二开 医院绩效管理系统解决方案紧扣新医改形势下医院绩效管理的要求,以“工作量为基础的考核方案”为核心思想,结合患者满意度、服务质量、技术难度、工作效率、医德医风…

如何使用 WavLM音频合成模型

微软亚洲研究院与 Azure 语音组的研究员们提出了通用语音预训练模型 WavLM。通过 Denoising Masked Speech Modeling 框架(核心思想是通过预测被掩蔽(即遮蔽或删除)的语音部分来训练模型,同时还包括去噪的过程)&#x…

使用单片机在图形点阵LCD上绘制波形图

使用单片机在图形点阵LCD上绘制波形图 需求: 假如有一组浮点数据,是通过AD转换得到的,保存在数组MyArray[]中,采集点数为len,采集周期为T,现在想用单片机在LCD上绘制出这组数据对应的波形图,该…

本地连接服务器Jupyter【简略版】

首先需要在你的服务器激活conda虚拟环境: 进入虚拟环境后使用conda install jupyter命令安装jupyter: 安装成功后先不要着急打开,因为需要设置密码,使用jupyter notebook password命令输入自己进入jupyter的密码: …

新能源汽车动力电池浸没式冷却方案介绍与未来趋势

前言 新能源汽车的兴起标志着汽车工业的一次革命,其中动力电池的设计与性能成为了关键。浸没式冷却方案作为一种新兴的技术,为动力电池系统提供了有效的散热解决方案,其在未来的发展趋势备受关注。 一 动力电池浸没式冷却方案介绍 首先&am…

用python写算法——栈笔记

栈 栈的定义相关算法题 栈的定义 1.它是一种运算受限的线性表。限定仅在表尾进行插入和删除操作的线性表。这一端被称为栈顶,相对地,把另一端称为栈底。向一个栈插入新元素又称作进栈、入栈或压栈,它是把新元素放到栈顶元素的上面&#xff0…

IIS配置SSL,根据pem和key生成pfx,openssl的版本不能太高

1、生成pfx文件 供应商给的文件是pef和key后缀的两个文件,在IIS里不好导入(如果有知道好导入的可以给我留言,谢谢。)。 1.1 下载OpenSSL工具,并安装。 主要用于将.pem文件转成.pfx文件。 下载OpenSSL的链接:http://slproweb.com/…

设计模式-结构型-适配器模式-Adapter

地址类 public class Address {public void street() {System.out.println("普通的街道");}public void zip() {System.out.println("普通的邮政编码");}public void city() {System.out.println("普通的城市");} } 荷兰地址类 public class …

飞书API(8):MySQL 入库定制版本

一、引入 通用版能解决百分之八九十的任务,剩下的部分任务需要进行定制。 先说明通用版本和定制版本有什么不同,通用版本就是只管大的数据类型,将数据处理为对应的类型入库,而定制版本会考虑局部列的数据类型,。举个…

10分钟了解Golang泛型

泛型是Golang在1.18版本引入的强大工具,能够帮助我们在合适的场合实现简洁、可读、可维护的代码。原文: Go Generics: Everything You Need To Know 导言 可能有人会觉得Go泛型很难,因此想要借鉴其他语言(比如Java、NodeJS)的泛型…

基于STM32单片机的室内温湿度及PM2.5浓度监测报警系统

基于STM32单片机的室内温湿度及PM2.5浓度监测报警系统 摘要: 本文设计并实现了一个基于STM32单片机的室内温湿度及PM2.5浓度监测报警系统。该系统通过集成温湿度传感器和PM2.5传感器,实时监测室内环境参数,并将数据通过液晶显示屏实时显示。…

docker修改默认安装路径

docker安装之后默认在 /etc/docker 在/etc/docker 文件下有一个daemon -json 没有就新增 {"registry-mirrors": ["https://kfwkfulq.mirror.aliyuncs.com","https://2lqq34jg.mirror.aliyuncs.com","https://pee6w651.mirror.aliyuncs.c…