全部博文(20)
分类: LINUX
2009-05-03 20:44:14
makefile在实际应用中的用法总结:
关于makefile的用法有很多介绍的资料,但大多都是一些长篇大论或者,比如什么显示规则,隐晦规则等等之类的规则介绍了一大篇,到头来还是使读者无法写出工程上实用的makefile。这里将实用的makefile写法总结如下:
案例1:所有文件均在一个目录的情况
TARGET=example
OBJECTS=main.o subfile1.o subfile2.o subfile3.o ...#列举出所有目标文件
CC=gcc
CFLAGS=-Wall -O2
$(TARGET):$(OBJECTS)
$(CC) $(CFLAGS) -o $@ $(OBJECTS) #注意:CC前面必须是tab建
%.o:%.c
$(CC) -c $(CFLAGS) -o $@ $< #注意:CC前面必须是tab建
.PHONY:clean
clean: rm *.o
案例2:大型工程中,源文件在src目录中,头文件在include文件夹中,就需要指定文件和头文件路径
VPATH=src TARGET=example
OBJECTS=main.o subfle1.o subfile2.o subfile3.o ...
CC=gcc
CFLAGS=-Wall -O2 I include
$(TARGET):$(OBJECTS)
$(CC) $(CFLAGS) -o $@ $(OBJECTS)
%.o:%.c
$(CC) $(CFLAGS) -o $@ $<
.PHONY:clean
clean: rm *.o