phony 详解_phoning翻译

phony 详解_phoning翻译phony详解1:一个目标,可以产生target文件,也可以不产生target文件echo目标就不产生echo文件不产生文件,则每次makeecho。都将执行recipe。因为make总是妄图产生一个比temp更新的target–echo文件。echo:temp@echo”$(shellls-ltemp)”2:一个目标,可以

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

phony 详解

1: 一个目标,可以产生target文件,也可以不产生target文件

echo目标就不产生echo文件

不产生文件,则每次make echo。都将执行recipe。

因为make总是妄图产生一个比temp更新的target–echo文件。

echo: temp


@echo “$(shell ls -l temp)”



2:一个目标,可以有依赖,也可以没有依赖。

clean目标,就没有依赖。

没有依赖,有2种情况。

一个是target是个文件,则target永远是最新的。target的recipe永远不会被执行。(参见3)

一个是target不能被make生成,则target的recipe永远要执行。(参见1)

clean就是一个没有文件的taget,则make clean需要每次执行recipe。

clean:


rm *.o

如果目录下面,恰好有个文件叫做clean

则clean永远是最新的。make clean每次都不会执行任何动作。

3: 为防止target和目录下面文件重名,则引入.PHONY: 就是让目标永远执行。

PHONY的意义就是,这个目标对应的文件是不需要生成的。只是为了执行一组动作。

就算有和target重名的文件,也忽略不管。

4: 改善性能

已知phony 目标并非是由其它文件生成的实际文件,make 会跳过隐含规则搜索。这就是声明phony 目标会改善性能的原因,即使你并不担心实际文件存在与否。

也就是说对于phony目标,make会乖乖的执行recipe,不会去管隐含规则那一套。因为它知道,对于phony目标。目的就是为了执行recipe. 不是妄图产生什么文件,或者中间文件。


5: PHONY使用2个必要条件


target没有依赖

target不生成对应的文件


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

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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • myPagination5.0 分页简单实例「建议收藏」

    myPagination5.0 分页简单实例

    2022年1月31日
    31
  • 小白教程!!!win10如何安装Windows和Linux双系统??

    小白教程!!!win10如何安装Windows和Linux双系统??最近升级了win10装了一块固态硬盘,决定装一个双系统玩玩,正好公司运维大哥没事干,在他的帮助下,加上上网看了看发现关于win10的双系统双硬盘安装教程大都语焉不详,要么就是从别处复制粘贴的,这里发一个我的安装步骤如下:一:去官网下载Ubuntu系统 地址:https://www.ubuntu.com/download/desktop问题来了,去哪里下载一个linux系统呢?很简单,去官…

    2022年7月24日
    5
  • Cent0S下使用LVS+KeepLive进行负载均衡及高可用web服务器

    Cent0S下使用LVS+KeepLive进行负载均衡及高可用web服务器Cent0S下使用LVS+KeepLive,进行负载均衡及高可用web服务器。通过对本文章的阅读:你可以了解LVS+KeepLive的安装,按照步骤一步一步完成就能实现对2台或N台web服务器进行负载均衡,实现LVS的负载均衡及失效转移。一、需要的文件:1、ipvsadm-1.24.tar.gz,下载地址:下载2、keepalived-1.1.15.tar.gz,下载地…

    2022年6月7日
    36
  • 网页升级中每天自动更新什么意思_快照搜索

    网页升级中每天自动更新什么意思_快照搜索网站被收录是百度蜘蛛爬行、记录、筛选的结果。网站被爬行后会在搜索引擎数据库中留下数据,当判断收录的内容达到用户要求质量时,网站的快照才会被释放出来,而快照的时候很多时候都是最初的爬行时间。这也是我们很多站长发现被收录后,快照时间不是当天时间的原因了。  在我们的认知中,每次百度快照的更新都是搜素引擎对网站数据的一次爬行收录过程,也就意味着更新就会带来网站排名的微调动。所以,更多时候

    2022年9月1日
    4
  • Java基础入门笔记05——面向对象,创建对象的内存分析,继承,封装,多态,object类,this&&super,方法重写,引用类型的强制转换,instanceof,抽象类,内部类,接口,异常。[通俗易懂]

    Java基础入门笔记05——面向对象,创建对象的内存分析,继承,封装,多态,object类,this&&super,方法重写,引用类型的强制转换,instanceof,抽象类,内部类,接口,异常。[通俗易懂]面向对象OOP——(Object-Oriented Programming)面向对象程序设计面向过程——线性思维面向对象——分类思维:大事化小,分而治之面向对象的本质:以类的方式组织代码,以对象的形式组织(封装)数据三大特征封装继承多态在认识角度:先有对象,后有类。在代码运行角度:向有类,后有对象。类是对象的模板,对象是类的实例。方法回顾public class Demo01 { //main 方法 public static void main(String[

    2022年8月8日
    7
  • Thinkpad X201拆机清灰[通俗易懂]

    Thinkpad X201拆机清灰[通俗易懂]这个是我自己的本本,买的时候是二手,两年一直工作正常。最近温度飙升,经常保护性关机。拆机第一步还是从底部开始,先卸电池下来。拆下内存盖板,漏出内存。这里的内存有一条是我自己加的。侧面是硬盘,这个位置跟其他本本不太一样。键盘从正面上方可以撬开,掀开要注意,小心排线。排线拔下来后,就可以继续拆主板。这个这个是左上的排线。主板上的螺钉拆完后,就可以掀起来了。高温的罪魁祸首散热片要拆下来清洗。厚厚一层清理完后,温度降低40度。效果明显。…

    2022年4月19日
    580

发表回复

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

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