如何编译历史版本chrome对应的chromium

本文详细记录了如何在遇到编译问题后,通过切换Chromium和depot_tools版本,以及设置环境变量来成功编译的过程,包括查看commit号、git操作和gclient同步等关键步骤。
摘要由CSDN通过智能技术生成

编译历史版本折腾好几次都没成功,前几天有幸得到大佬指点,编译成功,特记录分享如下:
整个过程主要包括拉取chromium、切换chromium版本、切换depot_tools版本、编译等几个步骤,重点是depot_tools版本确定与切换,确保与chromium版本一致,否则可能出现各种编译错误。拉取和编译都是常规操作,按官网的操作步骤执行即可。

1.查看chrome的commit号

chrome中输入:chrome://version/,查看修订版本字段,确定commit号。
在这里插入图片描述

2.git checkout,切换chromium分支

进入chromium的src目录,输入 git checkout XXXXXXXXXXXXX(上一步查到的commit号)切换分支,并确认已切换成功。
![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/a5e3a86e7a8844c0893e65f8ba887394.png在这里插入图片描述

3.gclient

运行gclient同步代码

4.查看对应depot_tools的commit号

查看src目录下的DEPS文件,搜索depot_tools,找到如下位置,确定编译对应版本chromium的depot_tools的commit号如下:
在这里插入图片描述

5.切换depot_tools

进入depot_tools根目录,运行 git checkout xxxxxxxxxxxxx(上一步查到的commit号),并检查确认切换成功。

6.同步depot_tools

进入depot_tools根目录,运行 gclient ,同步chromium对应版本的编译环境和工具(比如python版本等)。注意事项:
1)设置环境变量DEPOT_TOOLS_UPDATE=0,禁止自动更新depot_tools,如果没有此变量,手动添加一个。
2)如果运行gclient后,编译环境未自动同步,未生成类似bootstrap-2@3_8_10_chromium_26_bin的目录,或者目录名称中的python版本号不正确,将导致编译时各种错误,此时可手动运行depot_tools\bootstrap\win_tools.bat文件。

7.生成及编译

和主版本操作方法一致,如果希望编译的二进制代码尽量与chrome保持一致,生成时可设置参数如下,可能不完全正确,知晓的大佬可回复补充,谢谢!

# Build arguments go here.
# See “gn args <out_dir> --list” for available build arguments.
is_official_build = true
# is_chrome_branded = true
ffmpeg_branding=“Chrome”
is_debug = false
is_component_build=false
google_api_key=false
google_default_client_id=false
google_default_client_secret=false
proprietary_codecs=true
media_use_ffmpeg=true
# remove_webcore_debug_symbols=true
enable_nacl=false
# enable_hevc_demuxing=true
# enable_dolby_vision_demuxing=true
enable_mse_mpeg2ts_stream_parser=true
enable_hls_sample_aes=true
# enable_ac3_eac3_audio_demuxing=true

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值