1 前言

环境Win10主机+VMware15.5+Centos7.9

登录用户:root

Ninja 是Google推出的注重速度的构建工具,一般在Unix/Linux上的程序通过make/makefile来构建编译,而Ninja通过将编译任务并行组织,大大提高了构建速度。Gn,

其详细名称猜测为generate ninja,是专用于生成ninja文件的元构建系统。

2 准备工作

2.1 准备编译环境

yum -y install git automake libtool

2.2 编译安装re2c

1、代码下载

https://down.24kplus.com/linux/re2c-1.1.1.tar.gz

2、解压缩

tar -xvzf re2c-1.1.1.tar.gzcd re2c-1.1.1/

3、初始化空的git版本库

git init

4、编译配置

./autogen.sh./configure

5、编译安装

makemake install

6、版本查看

re2c –v

 3 编译安装ninja

1、代码下载

Ninja, a small build system with a focus on speed

https://codeload.github.com/ninja-build/ninja/tar.gz/refs/tags/v1.10.2

2、解压缩

tar –xvzf ninja-1.10.2.tar.gzcd ninja-1.10.2

3、编译

./configure.py --bootstrap

4、编译结束后,会在ninja目录中生成ninja的可执行程序ninja。可以直接将ninja程序拷贝到/usr/bin中,方便又省事

cp ./ninja /usr/bin

5、现在就可以在任意位置使用ninja了

ninja --version

4 编译安装gn

gn的编译需要使用clang编译器,并且gn使用了C++17的语法,所以需要使用较高版本的clang

 4.1 编译安装clang12.0.0

参见上篇文章

4.2 编译安装gn

1、代码下载

命令行中使用git下载gn,其它方式下载解压后,可能编译报错。

​git clone GitHub - timniederhausen/gn: Standalone version of Chromium's GN

2、编译

进入刚才下载的gn目录中,先执行gn的配置脚本。

./build/gen.py

然后在gn目录中执行:

ninja -C out

编译结束后,gn程序就在gn/out目录中。

3、安装gn

将gn/out目录下的gn复制到/usr/bin目录就可以在任意位置使用gn了。

cp ./out/gn /usr/bin

4、版本查看

gn --version

5、安装tree,以便于查看代码目录结构

yum -y install tree

5 感谢

编译过程中,参考了下边网友的文章,在此感谢。

1,ubuntu系统配置nijia_gn、ninja的安装-Ubuntu18.04_weixin_39719427的博客-CSDN博客

centos7.9编译安装构建系统gn+ninja相关推荐

  1. centos7下编译安装qemu5.0+spice-server最新版

    本人基于centos7环境编译安装qemu5.0+spice-server最新版的过程记录,希望对读者有些帮助: #安装gcc 7 sudo yum install centos-release-sc ...

  2. php-7.2.13的安装,Centos7.2编译安装php-7.0.13

    Centos7.2编译安装php-7.0.13 1- 安装依赖 yum install wget autoconf libjpeg libjpeg-devel libpng libpng-devel ...

  3. linux查询Samba的安装,Linux_Linux中Samba服务器的编译安装以及配置的宏的写法,编译安装查询系统是否安装samb - phpStudy...

    Linux中Samba服务器的编译安装以及配置的宏的写法 编译安装查询系统是否安装samba 复制代码代码如下: # rpm -aq | grep samba yast2-samba-client-2 ...

  4. CentOS7下编译安装libmodbus库

    CentOS7下编译安装libmodbus库 下载libdmodbus源代码 编译安装lidmodbus 测试 参考资料 下载libdmodbus源代码 libmodbus官网下载页面如下图所示: 可 ...

  5. 鸿蒙构建系统——gn官方FAQ翻译,以及gn官方文档分享

    GN FAQ 翻译 (PS:花了将近半个小时,把GN的官方FAQ翻译了一遍,有错漏之处欢迎大家指正.) GN 的文档在哪里? GN有大量的内置的帮助文档,所以你可以运行gn help命令查阅,但是你同 ...

  6. Centos7.6 编译安装heartbeat,及遇到的问题。

    1.heartbeat 3.0版不同与以前的版本,是由三个不同的项目组成,(下载地址 http://www.linux-ha.org/wiki/Downloads)Heartbeat,glue, ag ...

  7. Linux随笔16-主从DNS服务搭建以及智能DNS服务搭建、基于CentOS7.6编译安装MySQL-5.7.32

    Contents 1. DNS主从服务器搭建 1.1. DNS简介 1.2. DNS主从服务搭建 1.2.1. 主DNS服务器配置 1.2.2. 从DNS服务器配置 1.2.3. Web服务器准备 1 ...

  8. CentOS7.6编译安装nginx

    配置阿里云yum源 cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak wget -O /etc/yu ...

  9. 编译安装_在Centos7下编译安装新版本内核

    在工作中,很多时候由于需要使用新的技术方案,需要较新版本的内核来支持新的功能,而CentOS系统自带的内核版本普遍都比较旧,因此我们需要对系统的内核进行升级,安装新版的内核.在此,以CentOS 7系 ...

最新文章

  1. 251f与ips屏显示器对比_不闪屏,HDR,带鱼屏全都有,LG 29WK600宽屏显示器测评
  2. 运筹学与最优化方法_[公开课]运筹学之线性规划算法十二讲
  3. Karoly Nyisztor
  4. 大数据时代的河南机遇
  5. 图论---桥(割边)
  6. 第3章 控制程序流程(1)
  7. BZOJ1086[SCOI2005] 王室联邦
  8. vm9.02的序列号
  9. VueCli 中安装 axios
  10. linux红帽子镜像下载,红帽Red Hat Linux相关产品iso镜像下载
  11. 中兴上网卡 linux,4G网卡中兴MF831移植到linux
  12. 分享几个在线作图工具
  13. hp 430g8 笔记本摄像头黑屏问题解决
  14. python爬虫-北京租房可视化分析
  15. ESP8266-Arduino编程实例-MQ3酒精传感器驱动
  16. 2018 Unite大会——《使用UPA工具优化项目》演讲实录
  17. VBS 脚本控制键盘
  18. CodeForces #379(734A|734B|734C|734D|734E|734F)|二分查找|模拟|树的半径|位运算
  19. html5 app 打包,手机h5网站如何快速打包做成APP?
  20. 常见损失函数 损失函数选择方法

热门文章

  1. 罗伯特索耶的写作六法则
  2. FFmpeg:‘UINT64_C‘ was not declared in ths scope
  3. 全球与中国汽车真皮内饰市场竞争形势及供需策略分析报告2022-2028年版
  4. 《进销存 ——“商品查询/新增”》
  5. 如何解读测试结果出现负数
  6. ctex中dvi格式_LaTex使用过程中的各种类型文件说明
  7. openssh-7.5p1升级
  8. R语言-用R眼看琅琊榜小说的正确姿势
  9. 2022年葡萄糖基甜菊糖市场前景分析及研究报告
  10. 将Macbook的光驱位升级成SSD