零零社区|百姓的网上家园-互动交流平台!(0.0)=^_^=(00社区)

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz

关于Linux操作系统makefile实例详细解析

2013-4-7 10:50| 发布者: 123456000000| 查看: 9| 评论: 0

摘要: 三个指令: (1)ifeq : 包含两个参数,被逗号分开,并被括在圆括号内。ifeq与左括号之间要有空格 (2)else (3)endif : 结束条件语句。 例一: TARGET=helloworldCC=gccCFLAGS=-Wall -O -gSRC=http://www.knowsky.com/$ ...
 

三个指令:

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

(2)else

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

例一:

TARGET=helloworldCC=gccCFLAGS=-Wall -O -gSRC=http://www.knowsky.com/$(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.oTARGET=mmCC=ccall:$(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.oYESNO=NOifeq ($(YESNO),YES)TARGET=mmelseTARGET=nnendifCC=ccall:$(TARGET)$(TARGET):$(OBJECTS)$(CC) $(OBJECTS) -o $@rm -f $(OBJECTS)

路过

雷人

握手

鲜花

鸡蛋

相关阅读

发表评论

最新评论

相关分类


Archiver|手机版|小黑屋|00社区

GMT+8, 2023-1-31 10:50 , Processed in 0.048655 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部