Makefile中.PHONY的作用-make&& make install
原文链接:https://blog.csdn.net/derkampf/article/details/70256891
一.实例
拿clean举例,如果make完成后,自己另外定义一个名叫clean的文件,再执行make clean时,将不会执行rm命令。
为了避免出现这个问题,需要.PHONY: clean
(1)不添加.PHONY:clean
在Makefile所在的目录下touch一个clean文件
运行make–>运行make clean
结果:由于目录下clean文件冲突,无法执行make clean
(2)添加.PHONY:clean
运行make–>运行make clean
结果:make clean正常执行
二.结论
.PHONY是一个伪目标,可以防止在Makefile中定义的只执行命令的目标和工作目录下的实际文件出现名字冲突,另一种是提交执行makefile时的效率。
/configure配置环境
make是编译的意思。就是把源码包编译成二进制可执行文件
make install 就是安装的意思。
make&& make install的意思是:
make与makeinstall是两个命令,在你./configuration生成了Makefile之后执行编译安装;
与&&一起的还有||,不过意思不一样,&&是与,||是或;
make && makeinstall的意思就是执行make如果没有发生错误就执行make install
一般的软件包的安装都是./configure && make && make install这华丽的三部曲来完成的,
用一句话来解释这个过程:
根据源码包中 Makefile.in 文件的指示,
configure 脚本检查当前的系统环境和配置选项,
在当前目录中生成 Makefile 文件(还有其它本文无需关心的文件),
然后 make 程序就按照当前目录中的 Makefile 文件的指示将源代码编译为二进制文件,
最后将这些二进制文件移动(即安装)到指定的地方(仍然按照 Makefile 文件的指示)。
http://www.ruanyifeng.com/blog/2015/02/make.html
阮一峰的网络日志 -> Make 命令教程(完整)
Makefile中.PHONY的作用-make&& make install的更多相关文章
- Makefile中.PHONY的作用
单词phony (即phoney)的意思是:伪造的,假的.来自collins的解释是: If you describe something as phoney, you disapprove of i ...
- makefile中PHONY的重要性
伪目标是这样一个目标:它不代表一个真正的文件名,在执行make时可以指定这个目标来执行所在规则定义的命令,有时也可以将一个伪目标称为标签.伪目标通过 PHONY来指明. PHONY定义伪目标的命令 ...
- makefile中.PHNOY的用法
makefile中PHONY的重要性 伪目标是这样一个目标:它不代表一个真正的文件名,在执行make时可以指定这个目标来执行所在规则定义的命令,有时也可以将一个伪目标称为标签.伪目标通过 PHON ...
- Linux编译安装中configure、make和make install各自的作用
这些都是典型的使用GNU的AUTOCONF和AUTOMAKE产生的程序的安装步骤. ./configure是用来检测你的安装平台的目标特征的.比如它会检测你是不是有CC或GCC,并不是需要CC或G ...
- Makefile 中的.PHONY
PHONY 目标并非实际的文件名:只是在显式请求时执行命令的名字.有两种理由需要使用PHONY 目标:避免和同名文件冲突,改善性能. 所谓的PHONY这个单词就是伪造的意思,makefile中将.PH ...
- .PHONY makefile中的伪目标
我的理解: 拿clean举例,如果make完成后,自己另外定义一个名叫clean的文件,再执行make clean时,将不会执行rm命令. 为了避免出现这个问题,需要.PHONY: clean === ...
- Makefile中 的 phony target,empty target
phony target Makefile的语法很简单 <target> : <prerequisites> [tab] <commands> 目标.先决条件.命令 ...
- Makefile ------ .PHONY的作用
看下面的例子 Makefile文件 .PHONY: cleanclean: rm *.o 当Makefile文件所在目录有文件名为clean的文件,命令行“.PHONY: clean”又没添加的话,执 ...
- [转] Makefile 基础 (7) —— Makefile 中 make 的运行
该篇文章为转载,是对原作者系列文章的总汇加上标注. 支持原创,请移步陈浩大神博客:(最原始版本) http://blog.csdn.net/haoel/article/details/2886 我转自 ...
- Linux中./configure、make、make install详解
./configure && make && make install详解 2010-08-03 23:30:05 标签:休闲 ./configure &&a ...
随机推荐
- WPF 由TreeView想到的 DataTemplate,HierarchicalDataTemplate
DataTemplate简而言之,解决的就是后台代码中的类以怎么样的形式展现在xaml前台代码中的问题. 所以DataTemplate一般都要指定DataType,一般放在resource中,而Hie ...
- PLsql and 汉化包的安装使用
一.准备工作 1.点击下载PLSQL,本次安装的PLSQL版本为12.0.7,建议安装64位. 2.下载PLSQL时,版本旁边会有个"Language pack"的链接,点击后左侧 ...
- Java 在文件末尾追加内容
需求背景:多次向文件中依次写入内容, 需求分析:如何向文件中依次追加内容呢?而且不清空之前的内容. 今天就分享一下基于Java语言,如何在文件末尾追加内容. import java.io.*; pub ...
- 初探Iris
Iris 安装 go get -u github.com/kataras/iris 若遇到下面这种情况: 可删除保存路径中的kataras目录,并执行go get github.com/kataras ...
- 在Linux下使用wxWidgets进行跨平台GUI开发(二)
wxWidgets常见辅助类的应用示例 wxWidgets提供了一系列功能强大的辅助类(Helper Classes),涵盖了字符串处理.文件操作.XML解析.数据流.数据库和网络通信等功能,这些类为 ...
- Ceph性能测试
一.测试分类 ceph的性能测试包含rados性能测试和rbd性能测试 二.测试工具 rados性能测试工具:使用ceph自带的rados bench工具.rados losd-gen工具 rbd性能 ...
- Python 潮流周刊#106:PEP-734 正式接纳,多解释器时代来临(摘要)
本周刊由 Python猫 出品,精心筛选国内外的 400+ 信息源,为你挑选最值得分享的文章.教程.开源项目.软件工具.播客和视频.热门话题等内容.愿景:帮助所有读者精进 Python 技术,并增长职 ...
- 以数据驱动PCB制造革新:盘古信息引领行业领军企业数字化范式跃迁
智能车间内,机械臂正以高精度程序设定完成钻孔作业:每台设备上方的电子看板实时跳动生产数据--订单交付周期.工艺参数偏差值.设备OEE效率指标清晰可见:物料配送AGV小车穿梭于货架间,通过RFID标签自 ...
- 你了解 Java 的类加载器吗?类加载机制是什么?什么是双亲委派机制?
什么是类加载器,类加载器有哪些? 实现通过类的全限定名获取该类的二进制字节流的代码块叫做类加载器. 主要有一下四种类加载器: 启动类加载器:用来加载 Java 核心类库,无法被 Java 程序直接引用 ...
- vue中的div 拖拽
封装指令 const vDraggable = { mounted(el) { let pos1 = 0, pos2 = 0, pos3 = 0, pos4 = 0; el.onmousedown = ...