chromium源码的下载和编译三

chromium生成编译工程文件需要用到gn,但是gn又在chromium的依赖库中需要gclient来下载,这是需要翻墙的,于是在github上搜索了一下gn,真的找到了一些源码镜像,但是发现其编译过程还是需要gn,这变成了蛋鸡问题了,于是在网上找了一个最新的gn可执行文件,运行gn args out/debug,发现生成过程还是需要用gclient同步一些依赖库,这又变成了蛋鸡问题。

在看chromium/tools/gn目录时发现了一个文件,bootstrap.py看源码是一个自动编译文件,同时在github上找到一个subgn的镜像,看readme可以不用gn来编译出gn:https://github.com/ndsol/subgn,简单地两步就能编译出gn,然后把gn可执行文件替换depot_tools中的gn脚本,那么就能运行gn命令了:

  1. git clone https://github.com/ndsol/subgn
  2. cd tools/gn; ./bootstrap/bootstrap -s

但是在chromium目录运行gn args out/debug,还是会遇到问题:

ERROR at //.gn:6:1: Unable to load "/home/armite/google/chromium/third_party/angle/dotfile_settings.gni".

这说明还需要同步angle这个依赖库,于是在github上搜了一下angle,找到了google相关的镜像:https://github.com/google/angle.git,下载到third_party后,gn可以正常运行了。

但是在生成编译文件时,报错了:

Generating files...
ERROR at //build_overrides/build.gni:5:1: Can't load input file.
import("//build/config/gclient_args.gni")

但是在config中没有找到gclient_args.gni,这是做什么用的呢?

猜你喜欢

转载自blog.csdn.net/wzm012/article/details/83182967