Make工程管理器

参考链接https://blog.csdn.net/newcong0123/article/details/51863713

Make会按照Makefile的编译规则

它通过检查时间戳检查文件是否被修改,没修改则不会编译

 

Makefile文件是脚本文件,需要使用脚本语言。

 

Makefile的三元素:目标 依赖 命令

 

格式:

Target file:dependency file

Command     注意:command命令前要加一个Tab键

 

递归展开方式的定义格式为VAR = var

make中的变量使用格式为$(VAR)

 

1.gcc test.c -o test这个命令可以直接生成可执行文件

2.gcc -c test.c 可以生成目标文件(.o文件) 有了.o文件后,直接执行gcc test.o -o test生成可执行文件。

如果在编译了之后没有再修改,则再次输入“make”命令不会被编译,即make可以通过检查时间戳检查文件是否被修改,没修改则不会被编译。

 

为什么要先生成test.o文件,再生成可执行文件test
原因如下:
       若选择直接生成可执行文件,那么如果有多个源代码需要编译,第一次编译时需要将所有的文件从头编译,消耗大量时间,若此时修改其中一个源代码,再次编译时会同第一次编译时一样将所有文件从头编译,浪费大量时间;如果选择先生成test.o文件的话,若修改其中一个源代码,再次编译时只需要从头编译修改的文件,其他文件可以迅速生成可执行文件,即省去了其他未被修改文件的预处理和编译过程,直接链接。即使用此种方法可以加快编译速度,提高工作效率。

posted @ 2020-10-05 15:47  SjYu  阅读(119)  评论(0)    收藏  举报