1、make命令是如何工作的?

在默认方式下:我们输入make命令。那么:

  (1)make会在当前目录下找名字为“Makefile”或者“makefile”的文件。

  (2)如果找到,它会找文件中的第一个目标文件(target)。在上面的例子中就是edit

  (3)如果editd文件不存在,或是edit所依赖的后面的.o文件的文件修改时间要比edit这个文件新,那么,他就会执行后面所定义的命令来生成edit这个文件。

  (4)如果edit所依赖的.o文件也存在,那么make会在当前文件中找目标为.o文件的依赖性,如果找到则在根据那一个规则生成.o文件。

  (5)当然,C文件和H文件时存在的啦,于是make会生成.o文件,然后再用.o文件生成make的终极任务,也就是执行文件edit了。

 

这就是整个make的依赖性,make会一层一层地去找文件的依赖关系,直到最终编译出第一个目标文件。在找寻的过程中,如果出现错误,比如最后被依赖的文件找不到,那么make就会直接退出,并报错,而对于所定义的命令错误,或是编译不成功,make根本不理。make只管文件的依赖性。

 

posted on 2010-12-01 16:53  greatIDeas  阅读(367)  评论(0)    收藏  举报