Mac下构建Chromium

  学习一下Chromium的源码,先从自己构建Chromium开始

depot_tools获取

depot_tools是用来管理Chromium代码库和开发过程的工具,我们首先获取它

git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git

然后将它配置到环境变量里,首先打开bash_profile

vim ~/.bash_profile

然后再里面添加你的depot_tools路径

PATH="/path/to/depot_tools:${PATH}"
export PATH

退出保存一下再执行

source ~/.bash_profile

这就搞定了

chromium源码获取

在你心仪的位置创建一个文件夹存放chromium源码

mkdir myChromium && cd myChromium

然后用depot_tools中的fetch命令拉取chromium源码

fetch --no-history chromium

如果这中间中断了下载,后续只需要使用gclient工具就可以继续同步之前未下载完的部分(gclient是一个python脚本,用来管理模块依赖项的工作区,每个模块依赖项是从不同的子版本和git仓库里独立检查的)

gclient sync

这中间你可能还会遇到一个问题,就是在running hooks的时候出错,提示如下:

package_version: Could not download URL (https://storage.googleapis.com/nativeclient-once/object/binutils_arm_x86_64_apple_darwin_b33eac0121acfb07112b84a130824382abab91e2.tgz): No active exception to reraise

就是没法下载这个链接下的.tgz,但是你会发现如果直接浏览器访问这个链接是可以直接下载的。后面发现这大概是证书的问题。python3不使用系统的openssl库,而是依赖于自己的库,没有访问os级别的证书,这时我直接用的python2去下载就可以了。

Chromium构建

depot_tools里面的Ninja工具是用来构建Chromium的,下载完源码后执行以下命令

cd src
# 这里的out/mychromium是你自定义的目录
gn gen out/mychrome --ide=xode

然后会在你的定义的路径下生成文件夹,找到里面的out/mychrome/args.gn文件,写入:

is_debug = true
is_component_build = true
symbol_level = 2

然后我们就可以进行激动人心的构建阶段了,你要预留100G的磁盘空间,而且这个时间比较长,我的机子上耗费了6个多小时

autoninja -C out/mychrome chrome

构建好之后,执行下面的命令即可运行你构建好的Chromium了

out/mychrome/Chromium.app/Contents/MacOS/Chromium

参考资料

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值