VS2019编译 当前最新版chromium

Posted forever-kenlen-ja

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VS2019编译 当前最新版chromium相关的知识,希望对你有一定的参考价值。

之前编译过webrtc和chromium, 由于长时间没用,被我删除了,

最近在最新版本的google浏览器上遇到了播放器兼容性问题,老版本的google浏览器是没问题,IE, 火狐浏览器也没问题,

通过看google浏览器的打印日志和chromium媒体层的代码,排查下来,是ffmpeg调用解码器解码AAC失败了,有个别数据解码失败,我们是使用的libfdk,

怀疑是AAC数据打包进MP4的时候某些AAC数据被脏掉了,基本上就定位到这里,这两天看了下chromium的代码,又有点想搞下这个东西,

感觉新版的浏览器兼容性不太好,对数据正确的敏感性比较强了,于是又编译下chromium,也是为了断点调试进去,准确定位下,分析具体原因,这次用VS2019编译最新版本的浏览器,

后面再编译个带有调试符号的ffmpeg库。

1、工具

下载depot_tools,并配置环境变量,PATH下添加depot_tools的解压路径E:srcdepot_tools

 

2、设置代理

控制台管理员权限执行

git config --global http.proxy 127.0.0.1:1080
git config --global https.proxy 127.0.0.1:1080

netsh winhttp set proxy 127.0.0.1:1080

set HTTP_PROXY=127.0.0.1:1080 
set HTTPS_PROXY=127.0.0.1:1080

 

3、cmd运行gclient

 

4、配置VS的版本,环境变量设置

DEPOT_TOOLS_WIN_TOOLCHAIN = 0

GYP_MSVS_VERSION = 2019

GYP_MSVS_OVERRIDE_PATH = D:Program Files (x86)Microsoft Visual Studio2019Enterprise

 

5、 下载源码

最新版本的比较大,15G,比两年前又多了很多。

命令行执行fetch chromium

中间断了的话,可以通过gclient sync来同步代码,我下载的时候没有断过。

技术图片

 

 

 

 

6、生成vs2019解决方案 cd chromium 源码目录下 gn gen out/Default 

 

7、编译生成可执行文件 执行 ninja -C out/Default chrome 编译,也可以在vs2019里面打开all.sln build编译

 

8、单步调试,分析相关google浏览器行为,这里我是确认我mp4播放的兼容性问题

 

以上是关于VS2019编译 当前最新版chromium的主要内容,如果未能解决你的问题,请参考以下文章

windows vs2019 编译OpenSSL处理

windows vs2019 编译OpenSSL处理

VS2019继承的winforms控件未编译

[C++][修改]GDAL源码编译vs2015/vs2017/vs2019

VS2019编译Lua源码

为啥最新版的VS2017没有net framework 4.6.2,且我无法安装