Makefile 中的.PHONY】的更多相关文章

phony target Makefile的语法很简单 <target> : <prerequisites> [tab] <commands> 目标.先决条件.命令 构成了Makefile的全部规则 一般而言,说到目标总给人一种非要产生么东西出来的感觉,如果带着这种感觉理解phony target(伪目标)可能有些吃力.更好的一种理解是将phony target理解成一个动作,动作的特点是不一定非得产生么东西出来,但是会执行一些操作.Makefile中的phony ta…
PHONY 目标并非实际的文件名:只是在显式请求时执行命令的名字.有两种理由需要使用PHONY 目标:避免和同名文件冲突,改善性能. 所谓的PHONY这个单词就是伪造的意思,makefile中将.PHONY放在一个目标前就是指明这个目标是伪文件目标,如下:.PHONY:clean这里clean目标没有依赖文件,如果执行make命令的目录中出现了clean文件,由于其没有依赖文件,所以它永远是最新的,所以根据make的规则clean目标下的命令是不会被执行的.如下的例子: [yangfan@dhc…
单词phony (即phoney)的意思是:伪造的,假的.来自collins的解释是: If you describe something as phoney, you disapprove of it because it is false rather than genuine. 那么,在Makefile中,.PHONY后面的target表示的也是一个伪造的target, 而不是真实存在的文件target,注意Makefile的target默认是文件. 举个例子: $ cat -n Make…
伪目标是这样一个目标:它不代表一个真正的文件名,在执行make时可以指定这个目标来执行所在规则定义的命令,有时也可以将一个伪目标称为标签.伪目标通过   PHONY来指明. PHONY定义伪目标的命令一定会被执行,下面尝试分析这种优点的妙处. 1.如果我们指定的目标不是创建目标文件,而是使用makefile执行一些特定的命令,例如: clean: rm *.o temp 我们希望,只要输入”make clean“后,”rm *.o temp“命令就会执行.但是,当当前目录中存在一个和指定目标重名…
我的理解: 拿clean举例,如果make完成后,自己另外定义一个名叫clean的文件,再执行make clean时,将不会执行rm命令. 为了避免出现这个问题,需要.PHONY: clean ======================================================================================= 所谓伪目标就是这样一个目标,它不代表一个真正的文件名,在执行make时可以指定这个目标来执行其所在规则定义的命令,有时我们将一个伪…
转载:http://blog.csdn.net/wzw88486969/article/details/11739737 在内核的 Makefile 中会在多处地方看到 FORCE ,比如: # vmlinux image - including updated kernel symbols vmlinux: $(vmlinux-lds) $(vmlinux-init) $(vmlinux-main) vmlinux.o $(kallsyms.o) FORCE 实际上它是一个伪目标: PHONY…
1. 我们知道Makefile中的语法是这样: target ... : prerequisites ... command - - 2. 假如编译两个文件可以这么写: a.o:a.c  gcc -c a.c b.o:b.c  gcc -c b.c Test: a.o b.o   gcc -o Test a.o b.oclean:  rm *.o 我们可以单独这么运行:make a.o或者make b.o或者make clean注意上面三个的区别.前两个都会生成目标,而第三个不会生成目标,仅仅希…
makefile中PHONY的重要性 伪目标是这样一个目标:它不代表一个真正的文件名,在执行make时可以指定这个目标来执行所在规则定义的命令,有时也可以将一个伪目标称为标签.伪目标通过   PHONY来指明. PHONY定义伪目标的命令一定会被执行,下面尝试分析这种优点的妙处. 1.如果我们指定的目标不是创建目标文件,而是使用makefile执行一些特定的命令,例如: clean: rm *.o temp 我们希望,只要输入”make clean“后,”rm *.o temp“命令就会执行.但…
本博文是在学习了<GNU Make中文手册>后记录下来的自己的关于自动产生makefile依赖的语句的理解,向大家分享. <GNU make中文手册>中的相关章节见一下链接: http://blog.csdn.net/gmpy_tiger/article/details/51849257 ======================================================================================== 为了理解自动产生依…
该篇文章为转载,是对原作者系列文章的总汇加上标注. 支持原创,请移步陈浩大神博客:(最原始版本) http://blog.csdn.net/haoel/article/details/2886 我转自一个博主,基于原博客的整理版本: https://blog.csdn.net/seven_amber/article/details/70216216 make 的运行 一般来说,最简单的就是直接在命令行下输入make命令,make命令会找当前目录的makefile来执行,一切都是自动的.但也有时你…