一般情况下,cmake不会直接进行构建,而是生成MakeFile文件,然后通过 make来构建软件或库。
make
最近尝试编译了一下qtcreator,在提供的指导文件中推荐使用Ninja来构建,于是我按照指导使用了Ninja来构建。
事后,我尝试使用 Ninja来构建一些项目,并且对 Ninja和 Make两种方式进行了粗略的比较。
Ninja
Make
在我的测试中,用 Ninja构建 Qt/C++项目比 Make快两倍左右,构建 C项目则比 Make快九倍左右。
Qt/C++
C
所以,想要让 cmake的构建更快,可以尝试使用 Ninja。
cmake
先要安装 Ninja,据我所知,Ninja在deepin上的包名是 ninja-build
ninja-build
然后是让cmake生成 ninja的构建文件,一般使用 -G Ninja来指定。
ninja
-G Ninja
例如:
cmake -B build -G Ninja
最后就可以更快地构建了。
水帖结束……
linglong就用的 Ninja
ninja不是一般搭配meson用么,现在和cmake也能搞一起了呀
学习了。。。
Popular Ranking
Popular Events
一般情况下,cmake不会直接进行构建,而是生成MakeFile文件,然后通过
make
来构建软件或库。最近尝试编译了一下qtcreator,在提供的指导文件中推荐使用Ninja来构建,于是我按照指导使用了Ninja来构建。
事后,我尝试使用
Ninja
来构建一些项目,并且对Ninja
和Make
两种方式进行了粗略的比较。在我的测试中,用
Ninja
构建Qt/C++
项目比Make
快两倍左右,构建C
项目则比Make
快九倍左右。所以,想要让
cmake
的构建更快,可以尝试使用Ninja
。先要安装
Ninja
,据我所知,Ninja
在deepin上的包名是ninja-build
然后是让cmake生成
ninja
的构建文件,一般使用-G Ninja
来指定。例如:
最后就可以更快地构建了。
水帖结束……