前言
第一次记录
深入浅出Makefile
一、Makefile是什么?
Makefile里面就是一堆shell命令的集合,一旦编写好 Makefile 文件,只需要一个 make 命令,整个工程就开始自动编译,不再需要手动执行 GCC 命令。
二、Makefile书写
1.第一步
一般情况下一个工程会在总文件夹下,共创建四个子文件夹,分别是 bin文件:include 文件:obj 文件: src文件
一个项目主要会编写三个Makefile,一个在obj文件夹中,一个在src文件夹中,一个是总控Makefile
总控Makefile:
1,ADD:=Myfile
2,CC:= gcc
3,CFLAGS:=-c
4,OBJS:=GCC.o ino.o pMaxAge.o swap.o
5,export CC CFLAGS OBJS ADD
6,ALL:
make -C src
make -C obj
7, .PHONY :clean
8, clean:
$(RM) bin/*
$(RM) obj/*.o
第4行可替换成:自己所有obj文件夹中生成的 .o后缀文件
obj文件夹中Makefile
ALL:$(ADD)
mv $(ADD) ../bin
$(ADD):$(OBJS)
$(CC) $^ -o $@
src文件夹中Makefile
1 ALL:$(OBJS)
2 mv $^ ../obj
3 GCC.o:GCC.c
4 $(CC) $(CFLAGS) $< -o $@
5 ino.o:ino.c
6 $(CC) $(CFLAGS) $< -o $@
7 pMaxAge.o:pMaxAge.c
8 $(CC) $(CFLAGS) $< -o $@
9 swap.o:swap.c
10 $(CC) $(CFLAGS) $< -o $@
第一次在博客书写文章,还情各位手下留情!!!