make的学习小知识

来源:互联网 发布:安知玉如意全文 编辑:程序博客网 时间:2024/04/30 10:56

关于makefile的学习,已经有很多资料了,网上一搜,随处可见,在这里就不再赘余,这篇博文只是写自己学习makefile时的遇到的一些小的问题。

1。 clean 命令为什么没有执行

通常,我们在makefile时,会生成一些中间的文件,主要是(*.o)文件,我们希望程序生成后能够对这些中间文件进行清理,于是在最后一条加上下面的命令:

clean:

        rm -f *.o

但是,让新手百思不得其解的是,这条命令并没有执行。原因是,这其实是一个PHONY目标,不产生任何目标,PHONY目标并非实际的文件名:只是在显式请求时执行命令的名字。有两种理由需要使用PHONY目标:避免和同名文件冲突,改善性能。因此这条命令的运行需要显示的执行,执行方法为 make clean,后面的 rm -f *.o 命令就得到了运行,同理,其他的PHONY目标也是采用这种方法运行。

原创粉丝点击