如何获取chromium的源码

本文详细介绍了如何在中国大陆地区配置安装depot_tools,用于同步Chromium项目的源码,包括下载、配置环境变量、使用fetch命令同步源码等步骤。强调了在使用过程中保持网络稳定的重要性。

前言

1.如果你长期工作在中国大陆地区,请先弄一个靠谱的vpn,否则还是放弃搞chromium吧,具体原因你懂的(!—!)
2.以下的介绍是针对mac和linux平台的,windows平台大同小异。

第一步:配置安装depot_tools

depot_tools是google开发的一套针对chromium项目的管理工具,功能有很多,可以用来下载chromium项目的源码、下载chromium依赖库文件、整理代码格式、代码提交、代码审查等等,其实现是利用svn、git、python等其他工具,并且是跨平台的,windows、mac、linux都可以用,有兴趣的可以深入了解,但这里只用它来同步chromium的源码。
获取depot_tools可以使用如下命令

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

这个东西比较小,下载很快,完成后需要将它配置到环境变量,假设你同步到了/home/depot_tools目录,则执行以下命令

$ export PATH=/home/depot_tools:$PATH:

你可以把这个命令放到当前用户的.bashrc文件中(mac系统放到.bash_profile)中,重启终端。depot_tools中的命令就可以使用了。建议将depot_tools的路径放在$PATH的最前面,这样放在一下命令与系统命令冲突。

第二步:同步chromium源码

首先你要建立一个存放代码的目录,假设为/home/chromium。
然后进入这个目录,执行:

$ fetch –nohooks chromium

其中fetch就是depot_tools这个工具中的一个命令。
然后就是漫长的等待,整个东西同步完成有20多G,并且除非有异常发生(比如网断了什么的),整个过程没有什么提示,既不提示下载速度也不提示下载进度,只显示一句:

Running: gclient sync –nohooks

我都是通过查看/home/chromium目录的大小变化来确定同步是否在进行。

如果你只需要最新的代码,可以执行:

$ fetch –nohooks –no-history chromium

这样大概只会同步7G左右的东西。
如果在下载过程中发生了异常(比较常见的是断网,因为vpn),可以在/home/chromium目录下执行:

$ gclient sync –nohooks (or –nohooks –no-history 总之与fetch的参数一致)

有时可以继续同步,有时不行,具体原因没有分析过,但是我还是建议在发生中断后,删了下载目录,再用fetch命令重新下载,所以vpn一定要稳定靠谱,否则可能你永远也下不完。

下载完成后,如果你需要编译而不是仅仅看一下源码的话,还需要执行

$ gclient runhooks

这个过程很慢,他会下载一些编译工具链,如果不执行这一步,编译过程很可能有一些奇怪的错误。

要下载 Chromium 源码,需要遵循特定的流程,因为其源码仓库非常庞大且结构复杂。以下是详细的获取方式: ### 使用 `fetch` 工具获取 Chromium 源码 1. **安装 depot_tools** Chromium源码管理依赖于 `depot_tools`,这是一个包含 `fetch`、`gclient`、`gcl` 等工具的集合。首先需要将 `depot_tools` 添加到系统路径中: ```bash git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git export PATH="$PATH:/path/to/depot_tools" ``` 2. **使用 `fetch` 获取源码** 通过 `fetch` 命令可以自动配置 `gclient` 并下载 Chromium源码。执行以下命令: ```bash fetch chromium ``` 这将创建一个名为 `chromium` 的目录,并在其中下载完整的源码树。 3. **进入源码目录** 下载完成后,进入源码目录进行进一步操作: ```bash cd chromium ``` 4. **选择分支或标签** 如果需要特定版本的源码,可以切换到对应的分支或标签。例如: ```bash git checkout refs/tags/119.0.6045.10 ``` 或者切换到默认的 `main` 分支: ```bash git checkout main ``` 5. **同步依赖项** Chromium 使用 `gclient` 来管理第三方依赖。运行以下命令同步依赖: ```bash gclient sync ``` ### 手动克隆 Git 仓库 如果不使用 `fetch`,也可以通过 Git 手动克隆 Chromium 的主仓库: ```bash git clone https://chromium.googlesource.com/chromium/src.git chromium cd chromium git submodule update --init ``` 但需要注意的是,这种方式不会自动处理 `gclient` 配置和依赖项,因此推荐使用 `fetch` 工具来简化流程。 ### 源码下载地址 Chromium 的主仓库地址为: - [https://chromium.googlesource.com/chromium/src.git](https://chromium.googlesource.com/chromium/src.git) 此外,也可以通过镜像站点获取源码: - [https://github.com/chromium/chromium](https://github.com/chromium/chromium) ### 编译前准备 下载源码后,若计划进行本地编译,还需安装相应的依赖库和构建工具。例如,在 Ubuntu 上可以运行: ```bash sudo apt-get install build-essential libgl1-mesa-dev libx11-dev ``` 然后生成构建配置文件: ```bash gn gen out/Default ``` ### 参考资料 - [Chromium 官方源码获取指南](https://www.chromium.org/developers/how-tos/get-the-code/) - [Chromium 源码仓库地址](https://chromium.googlesource.com/chromium/src.git)
评论 10
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值