makefile关系到了整个工程的编译规则。一个工程中的源文件不计数,其按类型、功能、模块分别放在若干个目录中,makefile定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作,因为makefile就像一个
Shell脚本
一样,其中也可以执行
操作系统
的命令。
makefile带来的好处就是——“自动化编译”,一旦写好,只需要一个make命令,整个工程完全自动编译,极大的提高了软件开发的效率。
makefile带来的好处就是——“自动化编译”,一旦写好,只需要一个make命令,整个工程完全自动编译,极大的提高了软件开发的效率。
在C程序的编译过程中,依次要进行预处理、编译、汇编、链接四个阶段。
(1)预处理阶段:对c源码中的预处理代码进行处理。
(2)编译阶段:将c源码处理为汇编代码
(3)汇编阶段:将汇编代码处理为二进制代码(二进制文件即目标文件)
(4)链接阶段:将二进制代码打包成一个操作系统可以识别的可执行文件格式,即把程序中所有的目标文件和所需的库文件都链接在一起,最终生成一个可以直接运行的文件