Makefile 工程管理的三步

1.建立工程文件夹

其中包含4个文件夹和1个文件,分别是:
include
bin
obj
src
Makefile(文件)
Makefile 工程管理的三步_第1张图片

2.放入相应文件

*.c文件放在src文件夹中
Makefile 工程管理的三步_第2张图片

*.h头文件放在include文件夹中
在这里插入图片描述

obj存放.c文件编译不链接后的.o文件
Makefile 工程管理的三步_第3张图片

bin文件夹存放最后链接生成的可执行文件

3.编写3个Makefile文件

总Makefile文件(工程文件夹中):

#引入变量,方便后期修改
CC:=gcc
CFLAGS:=-c -g -Wall
RM:=rm -rf
OBJS:=main.o list.o
MyApp:=mylist

export CC CFLAGS RM OBJS MyApp

All:
	make -C ./src/
	make -C ./obj/

.PHONY: clear
clear:
	$(RM) ./obj/*.o
	$(RM) ./bin/*

src文件夹中的Makefile:

all:$(OBJS)
	mv $^ ../obj/
main.o:main.c
	$(CC) $(CFLAGS) $< -o $@
list.o:list.c
	$(CC) $(CFLAGS) $< -o $@

#这三个是系统变量
# $< 依赖中的第一个依赖
# $^ 所有依赖
# $@ 目标名

obj文件中的Makefile文件:

all:$(MyApp)
	mv $^ ../bin/
$(MyApp):$(OBJS)
	$(CC) $^ -o $@

你可能感兴趣的:(嵌入式学习之路,bash,linux,开发语言)