【Linux C编程】第六章 makefile项目管理
【摘要】 makefile项目管理相关知识
一、整体大纲
二、makefile的编写
一个规则 两个函数 三个变量
1. 一个规则
三要素:目标, 依赖, 命令
目标:依赖
命令:
第一条规则是用来生成终极目标的规则
a. 如果规则中的依赖不存在, 向下寻找其他的规则
b. 更新机制:比较的是目标文件和依赖文件的时间
2. 两个函数
1) 查找指定目录下, 指定类型的文件
src=$(wildcard ~/aa/*.c)
2)匹配替换函数
obj=$(patsubst %.c, %.o, $(src))
3. 三个自动变量
1)$<:规则中的第一个依赖
2) $^:规则中的所有依赖
3)$@:规则中的目标
只能在规则中的命令中使用
4. 模式规则
%.o:%.c
gcc -c $< -o $@
子目标和终极目标的关系:
更新目标的原则:
三、makefile中变量的使用
makefile编写示例:
app:main.o sub.o mul.o
gcc main.o sub.o mul.o -o app
gcc $^ -o $@
%.o:%.c
gcc -c $< -o $@
makefile中的自动变量:
- $<: 规则中的第一个依赖
- $@: 规则中的目标
- $^: 规则中的所有依赖
只能在规则的命令中使用
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)