zlg的imx283里的makefile

EXEC        = hello 
OBJS        = hello.o 
 
CROSS      = arm-fsl-linux-gnueabi- 
CC              = $(CROSS)gcc   
STRIP        = $(CROSS)strip 
CFLAGS   = -Wall -g -O2 
 
all:    clean $(EXEC) 
 
$(EXEC):$(OBJS) 
         $(CC) $(CFLAGS) -o $@ $(OBJS) 
         $(STRIP) $@ 
 
clean: 
         -rm -f $(EXEC) *.o 


下面是我写的

下面是我写的一个简单的有三个文件的一个makefile


OBJ= send.o ymodem.o receive.o
TARGET= demo

all: $(OBJ)
     $(CC) $(CCFLAG) $(OBJ) -o $(TARGET)

%.o:%.c
     $(CC) $(CCFLAG) $(CPPFLAGS) -c -o $@ $<
 
clean:
     rm -rf *.o $(TARGET)
.PHONY: clean

#################################################################
# A simple Makefile
# By Late Lee(http://www.latelee.org)

# 
# bugs:
#      1. 需要显式指定库位置、名称;
#      2. make 及 make clean处理得不好(对于库,要么删除再编译,要么无操作);
##################################################################

CC=gcc
CFLAGS = -Wall
DEBUG = y

ifeq ($(DEBUG), y)
CFLAGS += -g
else
CFLAGS += -O2
endif

SUBDIRS := foo bar bt

LIBS := bt/libbt.a foo/libfoo.a bar/libbar.a

LDFLAGS = $(LIBS)

RM = -rm -rf

__OBJS = main.o
__OBJS += example.o

__SRCS = $(subst .o,.c,$(__OBJS))

target = a.out

MAKE = make

#all: clean $(target)
all: $(target)

$(__OBJS): $(__SRCS)
	$(CC) $(CFLAGS) -c $^ -I ./configs/

# 这种格式也可以
#.c.o:
#%.o: %.c
#	$(CC) $(CFLAGS) -c $^ -I ./configs/
#********************************************
#%.o: %.c
#	$(CC) $(CFLAGS) -c $^ -I ./configs/
#********************************************
# 可单独:
#main.o: main.c
#	$(CC) $(CFLAGS) -c $^ -I ./configs/
#example.o: example.c
#	$(CC) $(CFLAGS) -c $^ -I ./configs/

$(target): $(__OBJS)
	for dir in $(SUBDIRS); \
	do $(MAKE) -C $$dir all || exit 1; \
	done
	$(CC) $(CFLAGS) $^ -o $@ $(LDFLAGS)

clean:
	@for dir in $(SUBDIRS); do make -C $$dir clean|| exit 1; done
	$(RM) $(__OBJS) $(target) *.bak *~

.PHONY: all clean


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值