Windows10的版本是10.0.18363.1082, chromium是以2016年的53.0.2785.134版本源代码为例。
一、准备
1、安装VS2015
安装时记得编程语言勾选上Visual C++,还有Windows 10 SDK 10.0.10586
2、科学上网
这个自己想办法哈
二、depot_tools
下载最新depot_tools,地址https://storage.googleapis.com/chrome-infra/depot_tools.zip。
解压到d:\chromium\,将d:\chromium\depot_tools添加到环境变量path中。
打开cmd,利用gclient命令下载python,git等工具,gclient命令还会自动生成d:\chromium\.gclient
d:
cd d:\chromium
set DEPOT_TOOLS_WIN_TOOLCHAIN = 0
set http_proxy=http://127.0.0.1:8080
set https_proxy=http://127.0.0.1:8080
gclient
三、下载chromium源码
使用google的服务器下载太慢了,我们用gitee仓库代替
修改d:\chromium\.gclient的url值为https://gitee.com/mirrors/chromium.git
solutions = [
{
"managed": False,
"name": "src",
"url": "https://gitee.com/mirrors/chromium.git",
"custom_deps": {},
"deps_file": ".DEPS.git",
"safesync_url": "",
},
]
下载chromium源码,gitee是国内服务器,在d:\chromium目录下执行如下命令,1个GB左右的代码,没几分钟就下载好了。
git clone --depth 1 --branch 53.0.2785.134 https://gitee.com/mirrors/chromium.git
rename chromium src
下载完chromium源码后,使用gclient sync --nohooks命令下载chromium的第三方源代码,比如v8源代码,他是根据d:\chromium\src\DEPS文件下载,这里必须要用到git代理
git config --global http.proxy "127.0.0.1:8080"
git config --global https.proxy "127.0.0.1:8080"
gclient sync --nohooks
四、编译
下载完全部chromium源码后,开始搭建编译环境,新建d:\chromium\boto.cfg配置文件,用于配置下载代理,boto.cfg文件内容如下
[Boto]
proxy=127.0.0.1
proxy_port = 8080
利用gclient runhooks命令自动下载编译环境的文件,如gn.exe,他会下载到d:\chromium\src\buildtools目录下
set NO_AUTH_BOTO_CONFIG=d:\chromium\boto.cfg
set DEPOT_TOOLS_WIN_TOOLCHAIN=0
gclient runhooks
新建编译参数文件d:\chromium\args.gn,如果需要更多详细的配置参数,查看官网http://www.chromium.org/developers/gn-build-configuration。
target_os = "win"
target_cpu = "x64"
is_debug = true
is_component_build = true
修改系统区域设置,不修改区域设置编译会出现warning C4819报错。
控制面板--区域--管理--更改系统区域设置
在页面中选择英语区域即可
一切就绪,开始编译
cd src
mkdir out\windows
copy ..\args.gn out\windows\args.gn
set DEPOT_TOOLS_WIN_TOOLCHAIN=0
set GYP_MSVS_VERSION=2015
set GYP_GENERATORS=msvs-ninja, ninja
set GYP_DEFINES=component=shared_library
gn gen out\windows --ide=vs --filters=//content/shell:content_shell
ninja -C out\windows content_shell 2>&1 > ..\weblink_compiler.log
cd ..
编译是个漫长的过程,编译成功后会有一个可执行文件d:\chromium\src\out\windows\content_shell.exe,VS的工程文件是d:\chromium\src\out\windows\all.sln,可以用VS2015打开,记得把启动工程改成content_shell,否则没法启动调试,看不到效果