centos7.9编译安装构建系统gn+ninja
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相关推荐
- centos7下编译安装qemu5.0+spice-server最新版
本人基于centos7环境编译安装qemu5.0+spice-server最新版的过程记录,希望对读者有些帮助: #安装gcc 7 sudo yum install centos-release-sc ...
- 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 ...
- linux查询Samba的安装,Linux_Linux中Samba服务器的编译安装以及配置的宏的写法,编译安装查询系统是否安装samb - phpStudy...
Linux中Samba服务器的编译安装以及配置的宏的写法 编译安装查询系统是否安装samba 复制代码代码如下: # rpm -aq | grep samba yast2-samba-client-2 ...
- CentOS7下编译安装libmodbus库
CentOS7下编译安装libmodbus库 下载libdmodbus源代码 编译安装lidmodbus 测试 参考资料 下载libdmodbus源代码 libmodbus官网下载页面如下图所示: 可 ...
- 鸿蒙构建系统——gn官方FAQ翻译,以及gn官方文档分享
GN FAQ 翻译 (PS:花了将近半个小时,把GN的官方FAQ翻译了一遍,有错漏之处欢迎大家指正.) GN 的文档在哪里? GN有大量的内置的帮助文档,所以你可以运行gn help命令查阅,但是你同 ...
- Centos7.6 编译安装heartbeat,及遇到的问题。
1.heartbeat 3.0版不同与以前的版本,是由三个不同的项目组成,(下载地址 http://www.linux-ha.org/wiki/Downloads)Heartbeat,glue, ag ...
- 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 ...
- CentOS7.6编译安装nginx
配置阿里云yum源 cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak wget -O /etc/yu ...
- 编译安装_在Centos7下编译安装新版本内核
在工作中,很多时候由于需要使用新的技术方案,需要较新版本的内核来支持新的功能,而CentOS系统自带的内核版本普遍都比较旧,因此我们需要对系统的内核进行升级,安装新版的内核.在此,以CentOS 7系 ...
最新文章
- 251f与ips屏显示器对比_不闪屏,HDR,带鱼屏全都有,LG 29WK600宽屏显示器测评
- 运筹学与最优化方法_[公开课]运筹学之线性规划算法十二讲
- Karoly Nyisztor
- 大数据时代的河南机遇
- 图论---桥(割边)
- 第3章 控制程序流程(1)
- BZOJ1086[SCOI2005] 王室联邦
- vm9.02的序列号
- VueCli 中安装 axios
- linux红帽子镜像下载,红帽Red Hat Linux相关产品iso镜像下载
- 中兴上网卡 linux,4G网卡中兴MF831移植到linux
- 分享几个在线作图工具
- hp 430g8 笔记本摄像头黑屏问题解决
- python爬虫-北京租房可视化分析
- ESP8266-Arduino编程实例-MQ3酒精传感器驱动
- 2018 Unite大会——《使用UPA工具优化项目》演讲实录
- VBS 脚本控制键盘
- CodeForces #379(734A|734B|734C|734D|734E|734F)|二分查找|模拟|树的半径|位运算
- html5 app 打包,手机h5网站如何快速打包做成APP?
- 常见损失函数 损失函数选择方法
热门文章
- 罗伯特索耶的写作六法则
- FFmpeg:‘UINT64_C‘ was not declared in ths scope
- 全球与中国汽车真皮内饰市场竞争形势及供需策略分析报告2022-2028年版
- 《进销存 ——“商品查询/新增”》
- 如何解读测试结果出现负数
- ctex中dvi格式_LaTex使用过程中的各种类型文件说明
- openssh-7.5p1升级
- R语言-用R眼看琅琊榜小说的正确姿势
- 2022年葡萄糖基甜菊糖市场前景分析及研究报告
- 将Macbook的光驱位升级成SSD