首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >基于VS2019的Chrome(2021年版本)浏览器编译实践

基于VS2019的Chrome(2021年版本)浏览器编译实践

作者头像
用户4148957
发布2022-06-14 08:57:02
发布2022-06-14 08:57:02
1.8K1
举报
文章被收录于专栏:C/C++与音视频C/C++与音视频

     前面我们在客户端开发漫谈中提到electron客户端方案,该方案是借助用chromium浏览器来对图形,音视频进行解码和渲染的,而chromium就是google chrome浏览器的开源版本,本文将对chrome浏览器的开源版本的下载和编译进行实战,后面我们将对chrome代码进行二次开发进行展开,以满足electron业务发展需求或者浏览器定制开发,或者加深对chrome浏览器工作原理的理解。

系统环境

1)操作系统:win10或更新

2)内存至少8G以上,推荐16G编译更快

3)至少100G磁盘

4)至少Visual Studio 2017 (>=15.7.2) 编译环境, 不过VS2019 (>=16.0.0) 以上更好,笔者采用的是VS2019。

一、环境安装

  1. )安装VS2019,个人使用选择社区版即可。

    VS2019需要安装C++桌面开发应用;包含“Desktop development with C++” 组件 和“MFC/ATL support” sub-components,其中SDK需要win10 SDK(10.0.19041.0以上)。

   这里的坑:1)安装Windows SDK版本不对 2)Windows SDK默认安装没有windbg,即系统没有C:\Program Files (x86)\Windows Kits\10\Debuggers\x64 目录,需要在控制面板找到windows soft develop kit,增加debugging tools for windows。

2)安装depot_tools工具

下载地址https://storage.googleapis.com/chrome-infra/depot_tools.zip,并解压到D盘,将该路径加入path环境变量;同时在环境变量中增加DEPOT_TOOLS_WIN_TOOLCHAIN = 0(即告诉depot_tools使用本地安装VS,不要google社区更新);

3)开启一个cmd控制台,运行gclient命令,gclient会自动更新环境,安装git和python环境(如果已经安装git和python,此步可以跳过)

二.下载

下载是一个痛苦的过程,不过不要灰心,选择一个好的本地网络,同时避开网络高峰,多试试,还是可以的。

1)配置git

$ git config --global user.name "My Name"

$ git config --global user.email "my-name@chromium.org"

$ git config --global core.autocrlf false

$ git config --global core.filemode false

$ git config --global branch.autosetuprebase always

2) 创建目录

$ mkdir chromium && cd chromium

3)下载代码

$ fetch chromium

如果不想下整个仓库,只下最新代码,可以使用fetch --no-history chromium,减少下载量。

三.编译

1)配置生成VS解决方案

gn gen --ide=vs2019 --filters=//chrome;//media/* --no-deps out\debug --args="is_component_build = true enable_nacl = false is_debug = true blink_symbol_level = 0"

最后生成含15880个工程的解决方案

                                                                   配置生成

                                               Chrome 配置生成的VS解决方案

2)打开VS解决方案,选择chrome项目,生成即可

                                          Chrome解决方案打开视图

生成过程也是一个漫长过程,毕竟整个解决方案15880个工程,而某些工程也是依赖第三方库,异常的庞大,我是8核16G内存电脑,大概编译一个晚上可以完成。

最后生成一个chrome.exe,双击打开,即可浏览网页,播视频等。

                                                                      Chrome.exe的生成

                                                             Chrome.exe浏览网页

关于window下的chrome的下载和编译就到此为止,由于机器环境的差异,可能还会遇到其他问题,这都需要查看log,分析问题逐步就解决的。后续将进一步对chrome的开源版本进行二次开发

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-02-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档