1 在Linux下,一般使用GCC文件,比较头疼的问题,每次编写Makefile文件,比较麻烦,关键是经常忘记makefile语法;
2 最近玩树莓派,借鉴了网上多篇博客,写了一个Makefile文件,具备小型项目的通用性,写下来,方便后续开发;
3 废话不多说,直接上:
all: DemoApp
#指定链接器
LD = gcc
#指定编译器
CC = gcc
OUT = ./debug/
#指定头文件搜索路径
INC = -I ./MCU_BSP_Lib/inc \
-I ./MCU_BSP_Lib/src \
-I ./MCU_BSP_Lib/src/BSP_Api_Crypto \
-I ./MCU_BSP_Lib/src/BSP_Api_License \
-I ./MCU_BSP_Lib/src/BSP_Protocol \
-I ./MCU_BSP_Lib/src/BSP_Api_License \
-I ./MCU_BSP_Lib/src/BSP_Api_Crypto
#添加要连接的库文件
LINK = -l bcm2835
#添加要编译的.c文件
SRCS = ./main.c \
./MCU_BSP_Lib/src/BSP.c \
./MCU_BSP_Lib/src/BSP_Util.c \
./MCU_BSP_Lib/src/BSP_Protocol/BSP_IIC.c \
./MCU_BSP_Lib/src/BSP_Protocol/BSP_SPI.c \
./MCU_BSP_Lib/src/BSP_Protocol/BSP_Protocol.c \
./MCU_BSP_Lib/src/BSP_Protocol/BSP_Protocol_SGCC.c \
./MCU_BSP_Lib/src/BSP_Api_Crypto/Lib_Crypto_Impl.c \
./MCU_BSP_Lib/src/BSP_Api_Crypto/Lib_Crypto.c \
./MCU_BSP_Lib/src/BSP_Api_License/Lib_API_Boot.c \
./MCU_BSP_Lib/src/BSP_Api_License/Lib_API.c \
#./MCU_BSP_Lib/src/BSP_Api_License/Lib_Update.c \
OBJS = $(SRCS:.c=.o)
CFLAGS = -g -Wall
#$(info SRCS: $(SRCS))
#$(info OBJS: $(OBJS))
#连接,生产目标程序DemoApp
DemoApp: $(OBJS)
@echo link...
$(LD) -o $@ $^ -l bcm2835
@echo done.
#编译
%.o:%.c
$(CC) $(CFLAGS) $(INC) -o $@ -c $<
#clean
clean:
rm $(OBJS)
rm DemoApp
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。