设为首页 加入收藏

TOP

关于Linux系统makefile实例详细解析
2014-11-23 23:35:16 来源: 作者: 【 】 浏览:8
Tags:关于 Linux 系统 makefile 实例 详细 解析

三个指令:


(1)ifeq : 包含两个参数,被逗号分开,并被括在圆括号内。ifeq与左括号之间要有空格


(2)else


(3)endif : 结束条件语句。


例一:


TARGET=helloworld


CC=gcc


CFLAGS=-Wall -O -g


SRC=$(wildcard *.c)


OBJS=$(patsubst %.c,%.o,$(wildcard *.c))


$(TARGET):$(OBJS)


$(CC) $(CFLAGS) $(OBJS) -o $@


# $(RM) *.o


%.o: %.c


$(CC) $(CFLAGS) -c $< -o $@


clean:


rm -rf *.o helloworld


例二:


VPATH=


OBJECTS=mmain.o ./pchild/pchild.o


TARGET=mm


CC=cc


all:$(TARGET)


$(TARGET):$(OBJECTS)


$(CC) $(OBJECTS) -o $@


rm -f $(OBJECTS)


mmain.o:mmain.c


$(CC) -c $< -o $@


pchild.o:pchild.c pchild.h


$(CC) -c $^ -o $@


例三:


VPATH=


OBJECTS=mmain.o ./pchild/pchild.o


YESNO=NO


ifeq ($(YESNO),YES)


TARGET=mm


else


TARGET=nn


endif


CC=cc


all:$(TARGET)


$(TARGET):$(OBJECTS)


$(CC) $(OBJECTS) -o $@


rm -f $(OBJECTS)


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Linux系统下命令排列、调度与替换 下一篇Linux内存之内存管理的实质

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: