case 1:

Makefile

clean:
rm a

environment_1 :

There is only file a

$ make clean

clean a

environment_2 :

There are two file a and clean

$ make clean
make: 'clean' is up to date.

can't clean a

case 2:

Makefile

.PHONY: clean

clean:
rm a

environment_1 :

There is only file a

$ make clean

clean a

environment_2 :

There are two file a and clean

$ make clean

clean a

reference:

http://deanjai.blogspot.com/2006/03/makefilevpathphony.html

https://read01.com/zh-tw/NyRx80.html#.XJM-JIURVmU

Makefile PHONY的更多相关文章

  1. Makefile ------ .PHONY的作用

    看下面的例子 Makefile文件 .PHONY: cleanclean: rm *.o 当Makefile文件所在目录有文件名为clean的文件,命令行“.PHONY: clean”又没添加的话,执 ...

  2. makefile .phony targets

    Phony Targets PHONY 目标并非实际的文件名:只是在显式请求时执行命令的名字.有两种理由需要使用PHONY 目标:避免和同名文件冲突,改善性能. 如果编写一个规则,并不产生目标文件,则 ...

  3. learning makefile .PHONY

  4. 实例讲解Linux下的makefile

    1.程序代码结构如下 makefile/ |-- Makefile |-- haha.c `-- hehe.c 1.1.需要被编译的源代码如下 $ cat haha.c #include " ...

  5. Make和Makefile编写(详见GCC手册)

    Makefile和Make Rules 多模块软件.依赖树和Make 默认规则 Make使用程序对简单变量的支持 内建变量 虚目标 特殊目标 一般性语法错误及其纠正措施 命令行的使用和调试 Makef ...

  6. 实现目标文件与源码分开的makefile测试实验

    uboot提供了两种编译策略,即可以将生成的目标文件与源码混在一起,也可以将生成的目标文件与源码分开.通过对uboot Makefile的分析,笔者编写了一个简单的实现这种功能的Makfile. 顶层 ...

  7. Linux Kernel Makefile Test

    一.本文说明 本文为linux内核Makefile整体分析的续篇,是依据Linux内核Makefile体系的主要内容编写一个简要的测试工程.Linux内核Makefile体系就好像一只“大鸟”,而这篇 ...

  8. Linux开发工具之Makefile(上)

    二.makefile(上) 01.make工具   利用make工具可以自动完成编译工作.这些工作包括:如果修改了某几 个源文件,则只重装新编译这几个源文件:如果某个头文件被修改了,则 重新编译所有包 ...

  9. Makefile学习(三)[第二版]

    make常用内嵌函数 1.函数调用 $(function arguments) #$引用的结果就是函数生成的结果 2.Makefile下常用的函数 1)$(wildcard PATTERN) #匹配当 ...

随机推荐

  1. eth day05

    智能合约众筹实战 淘宝众筹,京东众筹 https://izhongchou.taobao.com/index.htm 分析商业模式 解决京东众筹的痛点 https://izhongchou.taoba ...

  2. 以太坊remix IDE安装步骤

    Remix 以太坊Solidity IDE搭建与初步使用 以太坊: 因为以太坊为开源社区,虽然东西很优秀,但是组件十分的杂乱,因此首先简单介绍下以太坊的一些常用组件: Geth: Geth是由以太坊基 ...

  3. liniux备忘录-磁盘配额与进阶文件系统管理

    知识 磁盘配额Quota 可以限制磁盘的使用容量,可以对用户.群组磁盘的最大使用容量. 磁盘配额Quota的使用限制 只能针对整个文件系统. 核心必须支持Quota. 自行编译的核心需要注意 Quot ...

  4. css字体图标的制作和使用。

    css字体图标的制作和使用. 在项目开发的过程中,我们会经常用到一些图标.但是我们在使用这些图标时,往往会遇到失真的情况,而且图片数量很多的话,页面加载就越慢.所以,我们可以使用字体图标的方式来显示图 ...

  5. Git&GitHub&GitBook

    一.定义 Git(分布式版本控制系统) GitHub gitHub是一个面向开源及私有软件项目的托管平台,因为只支持git 作为唯一的版本库格式进行托管,故名gitHub. gitHub于2008年4 ...

  6. windows2008 R2 系统 安装wampserver提示“缺少msvcr110.dll文件”处理办法

    windows2008 R2 系统 安装wampserver提示“缺少msvcr110.dll文件”处理办法 原因分析: 因缺少Visual C++ Redistributable for Visua ...

  7. PHP全局变量局部变量

    http://www.w3school.com.cn/php/php_variables.asp

  8. vue中表单的动态绑定

    有一个表单: <el-form :model="configForm"> </el-form> 如果configForm初始化为{},此对象是动态变化的,如 ...

  9. typescript 贪吃蛇[学习过程中,模仿的一个例子]

    代码实现ts: 1 'use strict' module Main { const FloorType = { space: "space", snack: "body ...

  10. P2671 求和

    题目描述 一条狭长的纸带被均匀划分出了 nn 个格子,格子编号从 11 到 nn .每个格子上都染了一种颜色 color\_icolor_i 用 [1,m][1,m] 当中的一个整数表示),并且写了一 ...