💐 🌸 🌷 🍀 🌹 🌻 🌺 🍁 🍃 🍂 🌿 🍄🍝 🍛 🍤
📃个人主页 :阿然成长日记 👈点击可跳转
📆 个人专栏: 🔹数据结构与算法🔹C语言进阶🔹C++
🚩 不能则学,不知则问,耻于问人,决无长进
🍭 🍯 🍎 🍏 🍊 🍋 🍒 🍇 🍉 🍓 🍑 🍈 🍌 🍐 🍍
一、引入
上一篇博客中,不知道你有没有发现,clean前的目标文件是一个【.PHONY】,这是什么东东?
二、伪目标.PHNOY
📢PHONY是一个伪目标修饰符
,Makefile中将.PHONY放在一个目标文件前就是指明这个目标文件是伪文件目标。可以起到,反复执行效果。
- 如引入例子来说,也就是说:
clean被.PHONY修饰了,那么它就可以反复执行它的依赖方法。所以只要你一直使用【make clean】,它便会反复地执行【rm -f test.o test.s test.i】。
❗️注意:clean即使不被伪目标.PHNOY修饰,一样可以反复执行。因为它的依赖对象为空,当我们需要生成这个【clean】目标文件的时候就不需一些文件必须要存在,因此就可以一直[clean]。
伪目标.PHNOY真正的作用在其他指令上。
使用make指令:
可以发现,修饰后,每次make都执行一次依赖方法
。
三、总结一下
🔸 .PHONY修饰后的目标文件,它可以被反复执行,每次都会执行它的依赖方法。
🔸 .PHONY修饰的一定能被反复执行,但是能被反复执行的不一定被.PHONY修饰。