C语言 makefile

本文详细介绍了一个具体的Makefile案例,包括如何定义目标、依赖项及规则命令,并演示了如何利用Makefile自动化编译流程,简化软件项目的构建过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

命名规则:
makefile
Makefile

三要素
目标:依赖
规则命令

temp=main.o add.o sub.o
#使用变量$(temp)
main:$(temp)
        gcc -o main -I ./h main.o add.o sub.o
main.o:main.c
        gcc -c main.c -I ./h
sub.o:sub.c
        gcc -c sub.c -I ./h
add.o:add.c
        gcc -c add.c -I ./h

各个文件可以参考gcc文章

$(wildcard *.c) 获得所有.c文件
$(patsubst %.c,%.o,$(wilfcard *.c))
$@代表目标
$^全部依赖
$<第一个依赖
$?

cf = $(wildcard *.c)# 获得所有`.c`文件名
of = $(patsubst %.c,%.o,$(cf)) # 获得`.c`转换`.o`的文件名
main:$(of)
        gcc -I ./h -o main $(of)
%.o:%.c
        gcc -c $< -I ./h
.PHONY:clean #避免已经存在clean造成的冲突
clean:# 一个命令
        -@rm *.o # @之后的命令不会输出
        rm main
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值