Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1742876
  • 博文数量: 1493
  • 博客积分: 38
  • 博客等级: 民兵
  • 技术积分: 5834
  • 用 户 组: 普通用户
  • 注册时间: 2009-08-19 17:28
文章分类

全部博文(1493)

文章存档

2016年(11)

2015年(38)

2014年(137)

2013年(253)

2012年(1054)

2011年(1)

分类: C/C++

2013-02-27 09:39:01

原文地址:Makefile备忘 作者:lzj123

内置变量
$@: 表示规则中的目标文件集
$<: 依赖目标中的第一个目标名字。如果依赖目标是以模式定义的,那么$<是符合模式的一系列的文件集。文件是一个一个取出的。
$?: 所有比目标新的依赖目标的集合。
$^: 所有依赖目标的集合。(去除重复)
$+: 与$^相似,区别是此变量不去除重复。

取得当前目录下源文件列表
SRCS=$(wildcard *.c)
目标文件列表
OBJS=$(SRCS:.c=.o)

取得文件名(不含目录)
SRCS=$(wildcard ~/test/*.c)
FILENAME=$(notdir $(SRCS))

伪目标
.PHONY:all

显示命令,不执行,调试用

make -n 


目标文件生成在当前目录下

.c.o:
$(CC) -c $(CFLAGS) $(INCDIR) $<

目标文件生成在依赖文件所在目录下
.c.o:
$(CC) -c $(CFLAGS) $(INCDIR) $< -o $(<:.c=.o)

.c.o:
$(CC) -c $(CFLAGS) $(INCDIR) $< -o $*.o

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