[编程代码]一个linux下的gcc/c语言makefile

本文详细介绍了一个Makefile配置示例,包括如何设置编译器、编译选项、连接选项等,并展示了如何通过Makefile来管理源文件、生成目标文件及清理工作。
#设置编译器
 
CC = gcc
#设置编译选项
 
 
CFLAGS = -O2
#设置连接选项
 
LDFLAGS = -lpcap
#设置可执行文件名
 
EXE = a.out
#设置源文件目录
 
SRCDIRS = .
#设置文件后缀
 
SRCEXTS = .c
#设置清理命令
 
RM = rm -f
#设置编译选项
 
 
 
SHELL = /bin/sh
 
SOURCES = $(foreach d, $(SRCDIRS), $(wildcard $(addprefix $(d)/*, $(SRCEXTS))))
 
OBJS = $(foreach x, $(SRCEXTS), /
 
        $(patsubst %$(x), %.o, $(filter %$(x), $(SOURCES))))
 
DEPS = $(patsubst %.o, %.d, $(OBJS))
#设置假想目标
 
 
 
.PHONY: all objs clean cleanall rebuild
 
all : $(EXE)
 
 
 
%.d : %.c
 
        @$(CC) -MM -MD $(CFLAGS) 
objs: $(OBJS)
 
 
 
%.o:%.c
 
        $(CC) -c  $(CFLAGS) 
$(EXE):$(OBJS)
 
        $(CC) -o $(EXE) $(OBJS) $(LDFLAGS)
 
-include $(DEPS)
 
rebuild : clean all
 
 
 
clean:
 
        @$(RM) *.o *.d
 
cleanall: clean
 
        @$(RM) $(EXE) 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值