工程目录结构:

makefile的规则文件rules.mk内容:
- #头文件相对路径
- INC_DIRS := ./include \
- ./include/user \
- ./include/driver
- #源文件相对路径
- SRC_DIRS := ./src \
- ./src/user \
- ./src/driver
- #静态/动态库路径
- LIB_DIRS := ./lib
- #.o文件输出目录
- OUTPUT_COBJS := ./build/obj
- CFLAGS += -Wall -Os -g
- CLIBS += -lpthread
- #VPATH是Makefile的内置变量,依赖项如果在根目录找不到的话就从VPATH目录中查找.
- VPATH := $(SRC_DIRS)
- #指定编译器工具名称前缀
- #CROSS_COMPILE ?= arm-linux-gnueabihf-
- CROSS_COMPILE ?=
- CC = $(CROSS_COMPILE)gcc
- LD = $(CROSS_COMPILE)ld
- AS = $(CROSS_COMPILE)as
- NM = $(CROSS_COMPILE)nm
- STRIP = strip
makefile文件内容: