makefile实验一 make的基本原则、伪目标、以及不使用.PHONY确实现和伪目标一样功能的一种方法
target:
echo "hello_Makefile" .PHONY: clean
clean:
echo "clean Done .2019"
使用伪目标的优势解读: 如果不使用伪目标,且本地存在名为“clean”文件名的文件,那么将不能执行clean目标下的命令。
1. make的基本原则:A make软件认为目标总是对应文件的。 B 如果一个目标对应的依赖为空,将被视无需检查任何依赖是否更新。
如果此时不存在该目标同名的文件,那么make该目标就能执行该目标下的命令们。
如果
此时本地已存在该目标同名的文件,并且依赖也为空,make软件不会执行该目标对应的命令。
不使用.PHONY,实现和伪目标一样功能的,另一种方法:
target:
echo "hello_Makefile" #.PHONY: clean clean:Enable_this_target
echo "clean Done" Enable_this_target:
原理解读(图中红色文字): 因为目标Enable_this_target总是需要被更新,所以clean这个目标总是需要被更新,
达到了每次make clean,都能去执行clean目标所在的规则内的命令们,这一目的。
makefile实验一 make的基本原则、伪目标、以及不使用.PHONY确实现和伪目标一样功能的一种方法的更多相关文章
- makefile实验二 对目标的深入理解 以及rebuild build clean的实现
(一) rebuild build clean的实现 新知识点: 当一个目标的依赖是一个伪目标时,这个伪目标的规则一定会被执行. 贴实验代码 CC := gcc Target := helloworl ...
- makefile实验三 理解make工作的基本原则
代码简单,但测试花样多,若能回答对本博客的每个步骤的预期结果,可以说对makefile的基础掌握是扎实的. 一,当前的makefile代码 root@ubuntu:~/Makefile_Test# r ...
- 深入理解脚本化CSS系列第六篇——脚本化伪元素的6种方法
× 目录 [1]动态样式 [2]CSS类[3]setAttribute()[4]CSSRule对象添加[5]空样式覆盖[6]CSSRule对象删除 前面的话 我们可以通过计算样式来读取伪元素的样式信息 ...
- 使用JS控制伪元素的几种方法
一. 缘由: 本文源于在OSC社区中,有人提问如何用jq获取伪元素.我第一想法是强大的CSS Query应该可以获取伪元素吧. 然而事实上,CSS Query并不能.即我们不能通过$(":b ...
- after及before伪元素及解决父元素塌陷的几种方法
一.伪类和伪元素 CSS中伪类和伪元素有很多,也很好用!如果熟练使用的话可以解决很多问题 首先明白什么是伪类:伪类是基于当前元素的状态,而不是元素的id class等静态标志,它是动态变化的,它会在一 ...
- [转] 用javascript修改css伪类的几种方法
用javascript修改css伪类的几种方法: Modify pseudo element styles with JavaScript http://pankajparashar.com/post ...
- java 解决Hash(散列)冲突的四种方法--开放定址法(线性探测,二次探测,伪随机探测)、链地址法、再哈希、建立公共溢出区
java 解决Hash(散列)冲突的四种方法--开放定址法(线性探测,二次探测,伪随机探测).链地址法.再哈希.建立公共溢出区 标签: hashmaphashmap冲突解决冲突的方法冲突 2016-0 ...
- 。SLI,Service Level Indicator,服务等级指标,其实就是我们选择哪些指标来衡量我们的稳定性。而 SLO,Service Level Objective,服务等级目标,指的就是我们设定的稳定性目标,比如“几个 9”这样的目标。
.SLI,Service Level Indicator,服务等级指标,其实就是我们选择哪些指标来衡量我们的稳定性.而 SLO,Service Level Objective,服务等级目标,指的就是我 ...
- Makefile: (实验) 目标命令的结束标志
实验表示测试出来的结论,没有代码理论依据 Makefile中,目标对应的命令结束标记是什么呢?换句话说,Make中怎么判断目标的最后一条命令? 例如常见的目标编写如下: test1: echo &qu ...
随机推荐
- java生成四位随机数,包含数字和字母 区分大小写,特别适合做验证码,android开发
private String generateWord() { String[] beforeShuffle = new String[] { "2", "3" ...
- 【Linux利用远程SSH连接】SecureCRT中文出现乱码解决办法 Linux服务器技术
1. 修改远程linux机器的配置 vim /etc/sysconfig/i18n 把LANG改成支持UTF-8的字符集 如: LANG="zh_CN.UTF-8″ 或者 ...
- 再爆安全漏洞,这次轮到Jackson了,竟由阿里云上报
冤冤相报何时了,得饶人处且饶人.本文已被 https://www.yourbatman.cn 收录,里面一并有Spring技术栈.MyBatis.JVM.中间件等小而美的专栏供以免费学习.关注公众号[ ...
- Spring MVC实例创建(一)
Spring MVC Spring MVC 为展现底层提供的基于MVC设计理念的优秀的Web框架,是目前最流行的MVC框架之一.Spring3.0后全面超越Struts2,成为最为优秀的MVC框架.S ...
- ZT:C/C++ 字符串与数字相互转换
转载地址:https://www.cnblogs.com/happygirl-zjj/p/4633789.html 一.利用stringstream类 1. 字符串到整数 stringstre ...
- GET请求和POST请求的request和response的中文乱码问题
GET请求(request)中文乱码解决方案: 在Services的server.xml的配置文件的第一个Connector标签中添加属性URIEncoding="UTF-8" P ...
- 转载:Redis主从复制与高可用方案
转载自: https://www.cnblogs.com/lizhaojun-ops/p/9447016.html 原文链接:http://gudaoyufu.com/?p=1230 redis主从复 ...
- Java判断一个字符串是否是回文
package com.spring.test; /** * 判断字符串是否为回文 * * @author liuwenlong * @create 2020-08-31 11:33:04 */ @S ...
- webstorm单标签设置成双标签展开解决iview中col展开问题
大家好!我是木瓜太香,今天给大家带来一个 webstorm 小技巧 场景:有使用过 vue 框架并且使用 iview 做 ui webstorm 做 ide 的同学,可能会遇到一个比较奇怪的问题,iv ...
- DevOps-实践心得
基于最近几年从事与DevOps的相关实践,对这篇文章的观点深有体会,所以记录在这里.加粗部分是我比较深有体会的,但是对于最后作者对于"运维"有些悲观,我有点不敢苟同,反而对于运维的 ...