makefile中.PHONY的作用是什么?

makefile中.PHONY的作用是什么?makefile 中 PHONY 的作用是什么 初学 makefile 的时候 有一个关键字 PHONY 搞不懂 在请教过同学之后豁然开朗 遂写下经验望帮助更多的同学能够理解 在某度可以搜到 phony 的英文意思是 骗人的东西那在 makefile 里也是这个意思吗 请往下看在这里 我们运行 make 的时候是没有任何区别的

makefile中.PHONY的作用是什么?

  初学makefile的时候,有一个关键字“.PHONY”搞不懂,在请教过同学之后豁然开朗,遂写下经验望帮助更多的同学能够理解。
在某度可以搜到phony的英文意思是:骗人的东西
在这里插入图片描述
  那么,在Makefile中,.PHONY后面的target表示的也是一个伪造的target, 而不是真实存在的文件target,注意Makefile的target默认是文件。
例如:
  先创建两个makefile文件
在这里插入图片描述
在这里插入图片描述
  Makefile1和Makefile2的差别就是在Makefile2中定义了:
















.PHONY: clear 
  • 直接make看看
    在这里插入图片描述
    Makefile1和Makefile2的行为没有什么区别。




  • 再创建一个clear文件,make看看
    在这里插入图片描述
      区别来了,Makefile1拒绝了执行clear, 因为文件clear存在。而Makefile2却不理会文件clear的存在,总是执行clear后面的规则。由此可见,.PHONY clear起到“欺骗”的作用,欺骗make别管别的,让你干嘛你就干嘛的意思。




版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/219745.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月17日 下午9:59
下一篇 2026年3月17日 下午9:59


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号