windows 编译android chromium记录

563 阅读2分钟

0. Background

近来失业,随便搞点东西玩玩。

谷歌在官方文档中表示编译要求是:

  • A 64-bit Intel machine running Linux with at least 8GB of RAM. More than 16GB is highly recommended.
  • At least 100GB of free disk space.
  • You must have Git and Python installed already.

但实在是不想装系统,于是就想到了通过wsl2来尝试一下能否编译。 (mac和m1目测不支持,有人成功的话可以告诉我一声)

1. wsl2 安装

可能有人会问wsl不带2能不能用,我只能说没试过,不一定不行。

没什么好说的,网上教程一堆,这里注意ubuntu不能选择22.04,目前编译链还不支持,我用22.04做好环境之后又重新下了20.04 Orz

2. 不可描述的设置

由于众所周知的原因,我们可能无法正常访问地址,需要对wsl2环境下的网络做一些设置:

打开我的电脑,地址栏输入\\wsl$\Ubuntu-20.04\home\ubuntu的用户名,进入后输入

export ALL_PROXY=http://电脑ip:电脑端口
export HTTP_PROXY=http://电脑ip:电脑端口
export HTTPS_PROXY=http://电脑ip:电脑端口

重启命令行

3. 编

3.1 依赖

直接用这个命令检查并安装git和python依赖

sudo apt install git python3

3.2 按图索骥

按照官方文档编就行了

  • 拉代码的时候用这个会快一点
fetch --nohooks --no-history android 
  • gn args out/Default这个命令会打开powershell的编辑器,很难用;可以试试gn gen out/Default然后打开对应文件自行添加参数。
  • 执行build/install-build-deps-android.sh时,Snapcraft 我这里没连上,但不太清楚是网络问题还是wsl2的问题,如果有人也遇到了可以探讨一下解决办法(反正最后能跑了,懒得总结原因)。
  • 如果中间cpu占用率很低的话可以强制关掉(ctrl+z)重新执行一遍autoninja
  • 总共用了近5h
  • 成品300多mb

以上。