Chinaunix首页 | 论坛 | 博客
  • 博客访问: 61785
  • 博文数量: 18
  • 博客积分: 1400
  • 博客等级: 上尉
  • 技术积分: 211
  • 用 户 组: 普通用户
  • 注册时间: 2009-10-21 18:11
文章分类

全部博文(18)

文章存档

2010年(8)

2009年(10)

我的朋友

分类: LINUX

2010-10-03 11:01:06

makefile在实际应用中的用法总结:
关于makefile的用法有很多介绍的资料,但大多都是一些长篇大论或者,比如什么显示规则,隐晦规则等等之类的规则介绍了一大篇,到头来还是使读者无法写出工程上实用的makefile。这里将实用的makefile写法总结如下:
案例1:所有文件均在一个目录的情况
TARGET=example

OBJECTS=main.o subfile1.o subfile2.o subfile3.o ...#列举出所有目标文件
CC=gcc
CFLAGS=-Wall -O2(编译时进行2级优化)

$(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

阅读(890) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~