端午节闲的没事干,软路由又一时没思路,就来干点别的好了(……
那干点什么呢,想起Chromium 是开源的,那么他应该有源代码给开发者下载,那……要不编译一份试试,于是就干了
环境
CPU : Intel I5-6300HQ(一看就是笔记本……
内存 :2*8G DDR4
储存 : 据说巨耗费空间,而且文件又多又乱,就在机械硬盘上专门划了一块200G的空间来玩玩咯
梯子: 国情所需,在中国写个代码真不容易…… 建议是自己的梯子,毕竟……100G(多次下载失败然后重新下载了)的流量还是不少的……
系统 : win10 专业版(英文啊……
环境 : VS 2015 社区版
快一点的网络环境…… 有个千兆什么的最好了……实验室只有百兆,很勉强……还不是独占哎……
官方说明:
说在前:
- 建议使用英文版的操作系统,你说你都做windows 开发了,连win 10专业版都不买……
- 目录不要使用中文,谁知道那是utf还是ANSI~
- 官方是建议用cmd 进行一系列操作,但我还是更喜欢powershell 一些,熟练的工具也是生产力Orz
搭建环境
折腾一个环境就折腾了一天,还没好……
先去下载depot_tools,按照官方的要求,是要解压全部文件,而不是在资源管理器拖出来,有可能导致 .git 这个文件夹没被解压,这玩意也是基于git……,接着改PATH 加上整个文件夹例如C:/depot_tools 并且把它提到最前,在系统变量里加个 DEPOT_TOOLS_WIN_TOOLCHAIN 把它的值设置为0,防止 在配置环境的时候,顺手下载了VS……
嗯针对谷歌什么的都访问不了,代理是必须的,所以shadowsocks 搭建了一个socks5 的代理
然后就可以来各种翻墙了
depot_tools
修改 depot_toolsbootstarwinget_file.js 文件
改
xml_http = newActiveXObject("MSXML2.ServerXMLHTTP");
为
xml_http = newActiveXObject("MSXML2.ServerXMLHTTP.5.0");
在
xml_http.open("GET", url,false);
前面加上
xml_http.setProxy(2, "127.0.0.1:1080");
git 也得用代理
git config --global https.proxy http://127.0.0.1:1080
git config --global https.proxy https://127.0.0.1:1080
附上取消代理的方法
git config --global --unset http.proxy
git config --global --unset https.proxy
在自己的服务器上搭建了PPTP 某些软件包还是没办法走shadowsocks
然后安装 VS 2015.3 吧(官方给的建议,把所有有关win10, C++的都勾上,因为你也不知道你需要什么……
1 下载源码
先cd到你要放文件的地方 直接
mkdir chromium && cd chromium
fetch chromium
就是漫长的等待了………………
2 生成项目
下载结束后,先让它更新一下包
gclient sync
再 cd scr
然后执行
gn gen --ide=vs out\Default
到out\Default 就能看到有个all.sln的文件,用VS2015打开,又是漫长的等待……
项目很大,所以整理项目需要一定的时间
编译的话可以选择在VS中直接编译,调用的还是一样的东西,也可以使用命令
ninja -C out\Default chrome
首次编译会很慢……,很慢,如果有各种错误的话,对应着去查吧……
我第一次编译的时候出现了atl库的缺失,重新安装后还是没用,只能把整个代码删了和全部的环境都删了,然后用重新安装了一遍,最终编译大概花费了7个小时,编译的时候很吃CPU ,连接的时候就是通吃了,算是玩了玩吧
以后有兴致的话可以试着研究一下浏览器内核