一个能够递归执行的makefile小例子

本文介绍了一个使用GCC进行编译的脚本,详细解释了如何通过脚本自动编译源文件,并构建目标文件。同时,展示了如何管理编译过程中的目标依赖和清理操作。

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

CC = gcc                                                                                                                                                                         
SRC = $(wildcard *.c)                                                                                                                                                            
OBJS = $(patsubst %.c,%.o,$(wildcard *.c))                                                                                                                                       
FLAGS = -g -Wall -O                                                                                                                                                              
                                                                                                                                                                                 
all:HaTime test                                                                                                                                                                  
.PHONY:all HaTime                                                                                                                                                                
                                                                                                                                                                                 
##编译HaTime子目录                                                                                                                                                               
HaTime:                                                                                                                                                                          
        @echo "Entering HaTime...\n"                                                                                                                                             
        $(MAKE) -C HaTime/src/                                                                                                                                                   
                                                                                                                                                                                 
##编译主目录                                                                                                                                                                     
test:$(OBJS)                                                                                                                                                                     
        $(CC) $(FLAGS) -o test $(OBJS)                                                                                                                                           
                                                                                                                                                                                 
$(OBJS):%.o:%.c                                                                                                                                                                  
        $(CC) -c $(FLAGS) $^ -o $@                                                                                                                                               
                                                                                                                                                                                 
.PHONY:clean                                                                                                                                                                     
clean:                                                                                                                                                                           
        rm -f HaTime/src/*.o                                                                                                                                                     
        rm -f $(OBJS) all
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值