当前位置: 首页 > news >正文

Linux---make和makefile

一、基本概念

1.是什么

make是一条命令,makefile是一个文件

2.对应

在vs中按一下f5就能运行代码,在Linux中make就相当于f5,使用makefile来封装从而实现我, 想要的功能

3.使用

①创建makefile文件

②编辑makefile

解释:test.exe依赖于test.c下边是gcc编译

③make

输入make自动实现makefile中编译

二、make和makefile

1.依赖关系和依赖方法

test.exe依赖于test.c,gcc是依赖方法

2.模拟编译过程

3.makefile推导过程

4.清理工作

①细节1:依赖关系必须存在,依赖文件列表也可以为空(像clean这样的)

②细节2:以来方法可是是任何指令

③细节3:clean目标是利用make的自动推导能力让他执行rm命令,在构建工程的视角,看起来就是清理项目,本质就是删除不需要的文件

④细节4:make命令后边可以跟目标名,后边跟谁就解析谁的依赖方法,且默认只会推导一条完整的推导链路,且默认推导第一个。如果把clean放前边make就会执行clean

三、 .PHONY

1.本质

总是被执行的

2.功能

有.PHONY时,可多次执行

无.PHONY时

3.底层

文件 = 文件内容+文件属性

Assess:文件被访问的时间,有刷新次数,不是每次查看都更新

Modify文件内容

change文件属性

没有.PHONY时Modify修改的时间,源文件必须比可执行文件新才可以编译

.PHONY可以让gcc或者对应的命令,忽略MOD时间对比新旧,从而达到可以无限执行

四、makefile的关键字

1.@

在命令前加执行不回显

2.替换

该内部符号只需要改上边就行了

3.多个文件的处理

①建立多个文件

③通用

http://www.lryc.cn/news/607285.html

相关文章:

  • 分布在背侧海马体CA1区域的位置细胞(place cells)对NLP中的深层语义分析的积极影响和启示
  • 面试题:怎么理解 OSI 参考模型(开放式系统互联参考模型) 和 TCP/IP 模型(传输控制协议 / 网际协议模型 )
  • 【vue】Vue 项目创建工具对比:vue create 与 create-vue 的核心区别
  • RAGFLOW~knowledge graph
  • k8s部署mysql
  • 【数论】P8954 「VUSC」Math Game|普及+
  • SpringBoot3.x入门到精通系列:1.5 配置文件详解
  • QT6 源,十章绘图(2)画刷 QBrush:刷子只涉及填充颜色,线型,填充图片,以及变换矩阵这几个属性,附源代码带注释。
  • 京东零售在智能供应链领域的前沿探索与技术实践
  • 【Kubernetes 指南】基础入门——Kubernetes 集群(二)
  • Java抽象类与接口深度解析:核心区别与应用场景全指南
  • 四类屏幕录制方案的技术选型指南
  • 神经网络学习笔记
  • 流式编程的中间操作
  • 带root权限_中国移动创维DT541_S905L3融合机器改机顶盒刷机教程 当贝纯净版安卓9.0系统线刷包 刷机包
  • Rockchip RK3568J +FPGA边缘智能系统及储能网关
  • 【数据结构入门】顺序表
  • 了解Reddit自动化 社区营销更精准
  • 使用mybatis生成器生成实体类mapper和查询参数文件,简单spring mvc 项目。使用log4j输出日志到控制台和文件中。使用配置文件注册Bean
  • 【读文献】Capacitor-drop AC-DC
  • C#线程同步(三)线程安全
  • 【数据分享】各省文旅融合耦合协调度及原始数据(2012-2022)
  • 基于react的YAPI实战指南
  • 算法篇----位运算
  • 1164. 指定日期的产品价格
  • 进阶08:C#与SQL Server通信
  • uniapp基础 (二)
  • Design Compiler:物理约束
  • 【Linux】Linux下基本指令
  • 校园土壤墒情自动监测站:土壤小卫士