对 makefile 中 .DELETE_ON_ERRORS 的学习体会

简介:

上例子

复制代码
SHELL=bash
.DELETE_ON_ERRORS: 

LIBS=foo.gao
all: $(LIBS)
    @echo final
foo.gao:
    @echo $@
    touch $@
    ./me.o
复制代码

其中,me.o 程序是由C语言编译而成。其内容是显示 helloworld ,然后 return 2(即非正常退出)。 

 

运行结果要看如何来运行:

make --dry-run的运行结果:

 echo  foo.gao

 touch  foo.gao

 ./me.o

 echo final

此时 ls 命令可以发现,在当前目录下,并没有 foo.gao 文件。

 

而如果是仅仅运行 make,结果则是这样的:

echo foo.gao

touch foo.gao

./me.o

hello

make: *** [foo.gao] Error 2

此时 ls 命令可以发现,在当前目录下,生成了 foo.gao 文件,并没有被删除。

 

 

结束




本文转自健哥的数据花园博客园博客,原文链接:http://www.cnblogs.com/gaojian/archive/2012/09/24/2700066.html,如需转载请自行联系原作者

目录
相关文章
|
8月前
|
测试技术 编译器 vr&ar
CMake深度解析:掌握add_custom_command,精通Makefile生成规则(一)
CMake深度解析:掌握add_custom_command,精通Makefile生成规则
701 1
|
8月前
|
存储 Linux C++
CMake深度解析:掌握add_custom_command,精通Makefile生成规则(二)
CMake深度解析:掌握add_custom_command,精通Makefile生成规则
377 0
|
6月前
|
算法 搜索推荐 测试技术
python中算法逻辑错误(Logic Errors)
【7月更文挑战第18天】
234 2
|
6月前
|
存储 数据库
cannot read properties of underfined (reading ‘code‘),别光知道抄,有的时候,细节就是影响全局关键,别人代码到你项目不一定100%正确,判断bug出
cannot read properties of underfined (reading ‘code‘),别光知道抄,有的时候,细节就是影响全局关键,别人代码到你项目不一定100%正确,判断bug出
|
7月前
|
JSON 监控 Serverless
函数计算操作报错合集之执行提示Unrecognized option 'preset' ,该怎么办
在使用函数计算服务(如阿里云函数计算)时,用户可能会遇到多种错误场景。以下是一些常见的操作报错及其可能的原因和解决方法,包括但不限于:1. 函数部署失败、2. 函数执行超时、3. 资源不足错误、4. 权限与访问错误、5. 依赖问题、6. 网络配置错误、7. 触发器配置错误、8. 日志与监控问题。
135 0
|
8月前
|
Unix Linux Shell
CMake深度解析:掌握add_custom_command,精通Makefile生成规则(三)
CMake深度解析:掌握add_custom_command,精通Makefile生成规则
1901 1
|
测试技术 Go
Go 源码解读|如何用好 errors 库的 errors.Is() 与 errors.As() 方法
写作这篇文章的原因是我在写单元测试的时候,有时会调用 Go 的 errors 库中 errors.Is() 和 errors.As() 方法,借此做一个分析总结。
314 0
Go 源码解读|如何用好 errors 库的 errors.Is() 与 errors.As() 方法
|
C语言 C++
C语言程序入门——新手错误大全,常见的错误,总有一个适合你(一)易错点:main报错,error: ld returned 1 exit status报错,scanf与printf报错······
很多人在运行程序时,看到提示“error: ld returned 1 exit status”不知所措,自己代码没有任何问题,就是运行不起来,这是因为,自己上一个程序仍在运行,还未关闭,只要将上一个程序关掉,一切就迎刃而解了。常见的,如很多人喜欢装的杀毒软件,360,安全管家什么的,当你运行时,程序可能会被检测为高危程序,惨被清除,导致程序什么也没显示。正常情况下,无需杀毒软件,只要正常使用互联网,保证自己纯净上网后,杀毒软件就像累赘,可有可无。解决方法:输入时的格式必须与scanf里的格式一模一样。..
C语言程序入门——新手错误大全,常见的错误,总有一个适合你(一)易错点:main报错,error: ld returned 1 exit status报错,scanf与printf报错······

热门文章

最新文章