make与cmake的区别

简单的说下make与cmake的区别

写程序大体步骤为:

1、用编译器编写源代码,如.c文件

2、用编译器编译代码生成目标文件,如.o

3、用连接器链接目标代码生成可执行文件,如.exe

如果源文件太多,则需要一个个编译,会显得特别麻烦。

那为什么不可以进行批处理呢?

所以有了make工具,就是一个自动化编译的工具,用一条命令来实现完全编译

但是需要编写一个规则文件,make根据这个规则文件进行编译,这个文件就是makefile

对于一个大型工程来说,编写makefile是一件非常复杂的事情

那为什么不设计一个工具,读入所有源文件后,自动生成makefile呢?

所以有了cmake工具,它能够输出各种各种各样的makefile或者projet文件

但是又要编写cmakelist文件

所以简单的来说:

有了cmakelist文件,就可以cmake

cmake完后就能生成makefile

有了makefile才可以进行make

make完后就能编译源文件

如下所示:

</image>

另外附加一句:

1
make -j4  #同时最多跑4个作业

可以加快编译速度

参考文章:

https://blog.csdn.net/weixin_42491857/article/details/80741060