下载chrome源码成功是啥体验

因为众所周知的原因,用gclient直接下载很慢而且失败概率很大。如果只是想看看代码可以去这里https://cs.chromium.org/ 。如果只是想拉代码到本地不做提交可以去这位同事的镜像repo scheib/chromium 。如果真的要完整拉代码,编译,运行文档在这里https://www.chromium.org/developers/how-tos/get-the-code ,如果网ti络zi足够好,等几个小时应该就ok了
■网友
自问自答。。为什么要提这个问呢?因为我刚刚下完啦啦啦~希望能给上的相同需求的人留下经验~首先我们按照chromium官方的说法,下载depot_tools,这里有官方的说明http://commondatastorage.googleapis.com/chrome-infra-docs/flat/depot_tools/docs/html/depot_tools_tutorial.html#_getting_the_codechromium官方从39版本开始,使用git进行管理,替代原来的svn(调老漏洞的同学注意了)。这里使用gclient进行管理,在设置好环境变量之后,就可以使用以下命令了。fetch chromiumgclient sync --with-branch-heads git checkout refs/tags/\u0026lt;version number\u0026gt; gclient sync 最重要的是报错记录吧,我遇到的坑主要有1. 之前不知道39version之前的管理发生变化,导致第一次尝试失败,整个源码被搞乱了,webkit和blink参杂在一起,而且不知道怎么恢复2. 还有就是网的问题了,如果中间小水管断掉,还得重新尝试,不过gclient sync可以断电恢复3. screen工具这里不知道是什么问题,使用cscreen来跑sync的时候,在中间会一直提示某个实际存在的目录不存在,我猜测是环境变量,或者其它玄学兼容问题(因为我曾经用screen成功过一次),有待解决,建议不要使用screen4. 不知道是depot的锅还是google的锅,中间在用wget下载的时候,会报错,所以需要在src/build/linux/sysroot_scripts/install-sysroot.py文件中修改248 subprocess.check_call(249 )一次尝试要花接近几个小时,珍惜生命,远离Chromium。。。要想调个windows chromium还不知道要多麻烦,干脆提供个编译服务得了,我宁愿付费。。
■网友
只有我直接从百度网盘拉下来直接编译的么。。我乎貌似眼里只有tizi啊。。

■网友
从事过几年的chromium二次开发,chromium、cef、nwjs源码都编过。
1、首先要有个vpn,最近封的差不多了,所以要先学学怎么搭建vpn。
2、搭完之后并不是gclient sync就能下载了,还要设置git代理。vpn全局代理不一定好用。
3、代理设置完了也不一定就下载成功,有些依赖是拿python直接下载的。
4、下载不支持断点续传,几个G的数据库,中间不能断,失败了从头再来,拼人品的时候到了。
5、安装vs指定版本,并安装到指定更新。
6、一台高配置的电脑是必要的、i7/E3 16G内存 512固态硬盘统统搞起来,其实16G内存有点低,链接的时候会很慢,不停的内存和硬盘交换数据。
7、不要安装杀毒软件。
8、开始编译,编译不通过,一般两个问题A、本身chromium的最新提交就是个半成品,恰巧被你遇上了,这时要git checkout 一个稳定的版本 B、编译中文系统不兼容,最暴力的方法是安个英文的win10。
9、如果运气好的话,一个星期之内就可以编译完成。
10、但是不要高兴的太早,可能你下载的版本启动就会弹一堆DCHECK的窗口,只能换个版本试试,或者查找原因。
11、想看看代码,可VS带不动chromium,只能当个编辑器用,你说尴尬不。
12、看chromium源码的时候,先要看整个浏览器的运行流程,进程架构,线程架构;看项目的模块划分;项目是怎么管理的。
其实我觉得chromium可以当成一个代码库来使用,没必要每个地方都看到,也不可能每个地方都搞明白。
当要写一个功能的时候,想到chromium中有相关内容,搬过来就可以了。比如直接把base库拿过来,ipc模块拿过来,甚至是直接抄一段代码。我相信绝大部分人下载完之后,根本没有看过代码。


推荐阅读