IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> 【linux】makefile -> 正文阅读

[系统运维]【linux】makefile

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

makefile是一种脚本编程语言,我们在使用时可以添加变量、控制结构语句和函数等,同时还可以执行shell命令。有了makefile我们就可以自动化编译,极大提升了项目当中编译环节效率。


一、makefile文件的组成内容

makefile文件主要由以下几个部分组成: 1. 显示规则 指明生成目标文件的方法和步骤,包括要生成的文件,生成依赖文件及生成命令等。 2. 隐式规则 由make工具自动推导时需要使用的规则。 3. 变量定义 类似于c语言的define,被使用时展开到对应的位置上。 4. 文件指示 include,#if,定义多行命令等 5. 注释 使用字符‘#’进行注释

二、基本规则

1.makefile规则的语法形式

targets:prerequisites
	command
	/...

targets:prerequisites;command
	command
	...

其中targets表示目标,目标分为实际生成的文件以及伪目标PHONY。
command表示命令,以tab开头。如果与依赖规则一起则用‘;’隔开。
prerequisites表示生成目标所需要依赖的文件。

特殊符号意义
$@表示目标文件
$^表示所有的依赖文件
$<表示第一个依赖文件
$?表示比目标还要新的依赖文件列表
控制函数功能描述
$(info “text”)打印信息
$(waring “text”)打印警告信息
$(error “text”)打印错误信息并退出
TARGET = hello.out

CC = gcc

#src files
SRC_DIRS := ./src/hello.o
SRC_DIRS += ./add/add.o
SRC_DIRS += ./sub/sub.o

INC_DIRS := -I ./include


.PHONY:clean

$(TARGET):$(SRC_DIRS)
	@echo compiling...
	$(info "TARGET = $(TARGET)")
	$(info "SRC_DIRS = $(SRC_DIRS)")
	$(CC) -o $@ $^ $(INC_DIRS)

clean:
	rm hello.out

总结

提示:这里对文章进行总结:

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2021-09-13 09:39:24  更:2021-09-13 09:41:32 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 16:55:08-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码