【C++】小而快的Ninja-创新互联

(点击上方公众号,可快速关注)

10年积累的网站设计、网站建设经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站制作后付款的网站建设流程,更有中江免费网站建设让你可以放心的选择与我们合作。

CMake是C++事实上的标准构建生成器(Build generator),之所以叫生成器,是因为它通过分析CMakeLists.txt为构建系统生成真正的构建文件,如Makefile、VS的sln文件等。大部分上下文中,构建生成器跟构建系统指的是一回事。

CMake虽应用广泛,但难用程度和语法的迷惑程度远高于类Python语法的Meson,有兴趣的朋友的可以看下(https://mesonbuild.com/)。

Ninja是具体的构建系统,层次与Make对标,设计初衷:简单且快速。是很多现代构建生成器默认的构建系统,如上面提到的Meson。

Why Ninja ?

与make相比,主要是构建速度快,尤其是大项目,增量构建尤其明显。

安装

常用的方法,通过系统Linux的包管理器安装,或通过Python的pip【略】。在Centos中,可

yum install -y ninja-build
使用

我们一般不直接使用Ninja,而是通过CMake、Meson这类工具生成。

这里以CMake为例,假设之前的用法为【默认生成Makefile】:

$ cmake .. -DCMAKE_BUILD_TYPE=Debug
$ make

只要使用-G选项指定Ninja即可:

$ cmake .. -G Ninja -DCMAKE_BUILD_TYPE=Debug
$ ninja

CMake同时支持in-source build和out-of-source build,推荐out-of-source,好处是生成的构建文件不会“污染”项目的代码,而且单独一个目录,也方便在git等版本管理工具里排除。

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


分享题目:【C++】小而快的Ninja-创新互联
文章URL:http://myzitong.com/article/edeod.html