思明区建设局网站,旅游网站开发需求报告,微商引流一般用什么软件,成都旅游路线一览表一个能直接运行的Ninja例子#xff0c;build.ninja文件怎么写#xff1f;
作者将狼才鲸创建日期2024-03-08
CSDN文章阅读地址Gitee源码和工程下载地址 如果你使用的是Windows MSYS2 MinGW64 已提前安装过gccmsys2命令行中使用 pacman -S mingw-w64-x86_64-ninja 安装Ninj…一个能直接运行的Ninja例子build.ninja文件怎么写
作者将狼才鲸创建日期2024-03-08
CSDN文章阅读地址Gitee源码和工程下载地址 如果你使用的是Windows MSYS2 MinGW64 已提前安装过gccmsys2命令行中使用 pacman -S mingw-w64-x86_64-ninja 安装Ninja软件 如何搜索msys2中的软件 https://packages.msys2.org/package/mingw-w64-x86_64-ninja?repomingw64
jimDESKTOP-SVP3BEM MSYS /d/1_git/OH-NEXT-Kernel
$ pacman -S mingw-w64-x86_64-ninja
resolving dependencies...
looking for conflicting packages...Packages (1) mingw-w64-x86_64-ninja-1.11.1-2Total Download Size: 0.44 MiB
Total Installed Size: 1.73 MiB:: Proceed with installation? [Y/n] y
:: Retrieving packages...mingw-w64-x86_64-ninja-1.1... 449.2 KiB 286 KiB/s 00:02 [###############################] 100%
(1/1) checking keys in keyring [###############################] 100%
(1/1) checking package integrity [###############################] 100%
(1/1) loading package files [###############################] 100%
(1/1) checking for file conflicts [###############################] 100%
(1/1) checking available disk space [###############################] 100%
:: Processing package changes...
(1/1) installing mingw-w64-x86_64-ninja [###############################] 100%jimDESKTOP-SVP3BEM MSYS /d/1_git/OH-NEXT-Kernel
$ ninja --version
1.11.1 如果是Ubuntu系统则用下面命令安装软件 sudo apt install ninja-build 安装好的软件在msys2的 /mingw64/bin/ 目录下 将这个目录加入到Linux也就是msys2的环境变量中如果你曾经添加过则就不要重复添加了 echo export PATH$PATH:/mingw64/bin ~/.bashrc 打开家目录下的.bashrc隐藏文件在最后面加入一行export PATH$PATH:/mingw64/bin保存并关闭文件source ~/.bashrc 立即生效环境变量 默认的构建文件为当前目录下的 build.ninja 文件类似于Linux中的Makefile文件 ninja软件只实现最基本的功能一般需要其它上层软件来生成一个build.ninja文件例如Gn软件你也可以手写build.ninja文件就像你手写Makefile文件但是不建议你这么做所以你也不用看懂ninja配置文件怎么写以后还是用Gn工具来生成它下面我会手写一个简单的配置文件其语法也和Makefile类似使用了两个空格代替Makefile的tag键。 进入到本仓库的ninja演示目录 cd /d/1_git/OH-NEXT-Kernel/src/standalone/01_ninja 新建一个mian.c文件写上hello world输出
jimDESKTOP-SVP3BEM MSYS /d/1_git/OH-NEXT-Kernel/src/standalone/01_ninja
$ cat main.c
#include stdio.hint main()
{printf(hello world\n);fflush(stdout);while (1);return 0;
}touch build.ninja 新建一个ninja配置文件写上编译参数
jimDESKTOP-SVP3BEM MSYS /d/1_git/OH-NEXT-Kernel/src/standalone/01_ninja
$ cat build.ninja
cc gcc
cflags -Wallrule cccommand $cc $cflags -c $in -o $outbuild main.o: cc main.crule linkcommand $cc $cflags $in -o $outbuild demo.exe: link main.ojimDESKTOP-SVP3BEM MSYS /d/1_git/OH-NEXT-Kernel/src/standalone/01_ninja编译命令为 ninja 类似于make的用法清除上次编译结果的命令为 ninja -t clean
jimDESKTOP-SVP3BEM MSYS /d/1_git/OH-NEXT-Kernel/src/standalone/01_ninja
$ ls
build.ninja main.cjimDESKTOP-SVP3BEM MSYS /d/1_git/OH-NEXT-Kernel/src/standalone/01_ninja
$ ninja
[2/2] gcc -Wall main.o -o demo.exejimDESKTOP-SVP3BEM MSYS /d/1_git/OH-NEXT-Kernel/src/standalone/01_ninja
$ ls
build.ninja demo.exe main.c main.ojimDESKTOP-SVP3BEM MSYS /d/1_git/OH-NEXT-Kernel/src/standalone/01_ninja
$ ./demo.exe
hello worldjimDESKTOP-SVP3BEM MSYS /d/1_git/OH-NEXT-Kernel/src/standalone/01_ninja
$ ninja -t clean
Cleaning... 2 files.jimDESKTOP-SVP3BEM MSYS /d/1_git/OH-NEXT-Kernel/src/standalone/01_ninja
$ ls
build.ninja main.cjimDESKTOP-SVP3BEM MSYS /d/1_git/OH-NEXT-Kernel/src/standalone/01_ninja
参考网址 ninja介绍及使用ninja使用Ninja构建系统入门–手敲一遍BUILD.ninjav61.03 鸿蒙内核源码分析(忍者ninja) Ninja构建系统入门