我们相信:世界是美好的,你是我也是。平行空间的世界里面,不同版本的生活也在继续...

c语言项目相关的编译工具很多,除了cmake外,还有其它相关的编译软件,比如mingw64中的gcc.exec++.exe。本文里面讲述其中的ninja编译工具。当然对于c语言项目来说,ninja并不是必须的,只是其中的一个可选选项。只是本轮cpp项目的相关模块项目的编译,可能需要ninja工具而已。

苏南大叔:c语言项目,如何下载使用交叉编译工具ninja? - cpp-ninja
c语言项目,如何下载使用交叉编译工具ninja?(图5-1)

苏南大叔的“平行空间笔记本”博客,记录苏南大叔的编程经验故事。本文测试环境:win10cmake@3.28.0ninja@1.11.1。本文的ninjavisual studio的地位作用是有些类似的,自己后续慢慢体会。

ninja

ninja官方网站,非常简陋...

github地址:

官网文字介绍:
Ninja is a small build system with a focus on speed. It differs from other build systems in two major respects: it is designed to have its input files generated by a higher-level build system, and it is designed to run builds as fast as possible.

苏南大叔:c语言项目,如何下载使用交叉编译工具ninja? - ninja官方网站
c语言项目,如何下载使用交叉编译工具ninja?(图5-2)

下载ninja

然而本文并不是以编译ninja源码为目的的【不要走入歧途】,所以选择的是release下载。

ninja居然提供了release下载,而不是让大家自己去编译。点赞。

下载地址:

苏南大叔:c语言项目,如何下载使用交叉编译工具ninja? - 成品release下载
c语言项目,如何下载使用交叉编译工具ninja?(图5-3)

加入环境变量path

由于苏南大叔是从cmake认识ninja的,对于苏南大叔来说,两者是一起的。所以把这个独立文件ninja.exe放到了<cmake>/bin/下面了。当然,您也可以把ninja.exe放在任何一个合理的全局路径里面。只是方便调用而已。

苏南大叔:c语言项目,如何下载使用交叉编译工具ninja? - 全局路径
c语言项目,如何下载使用交叉编译工具ninja?(图5-4)

自行构建ninja

这部分内容,苏南大叔仅作描述,没有尝试。

这款ninja居然有两种构建方式,一种是python,一种是cmake。其自身的编译方式类似:

./configure.py --bootstrap

或者

cmake -Bbuild-cmake
cmake --build build-cmake
甚至可以自己构建自己(python生成的build.ninja文件)。这就有点像构建php的时候,构建工具里面就有个php.exe。这到底是先有鸡还是先有蛋?

ninja使用命令

官方文档地址:

这里贴一下可能用到的命令:

命令解释
ninja构建
ninja test测试
ninja install安装到当前系统

苏南大叔:c语言项目,如何下载使用交叉编译工具ninja? - nija-test
c语言项目,如何下载使用交叉编译工具ninja?(图5-5)

相关文章

结语

这个ninja软件是把交叉编译给玩明白了,各种交叉各种编译。更多cpp相关经验文章,请点击苏南大叔的博客文章链接:

如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。

 【福利】 腾讯云最新爆款活动!1核2G云服务器首年50元!

 【源码】本文代码片段及相关软件,请点此获取更多信息

 【绝密】秘籍文章入口,仅传授于有缘之人   cpp