编译历史版本折腾好几次都没成功,前几天有幸得到大佬指点,编译成功,特记录分享如下:
整个过程主要包括拉取chromium、切换chromium版本、切换depot_tools版本、编译等几个步骤,重点是depot_tools版本确定与切换,确保与chromium版本一致,否则可能出现各种编译错误。拉取和编译都是常规操作,按官网的操作步骤执行即可。
1.查看chrome的commit号
chrome中输入:chrome://version/,查看修订版本字段,确定commit号。
2.git checkout,切换chromium分支
进入chromium的src目录,输入 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