【说明】前段时间练习的小项目(带有protobuf-c)顺便练习makefile的编写
一、此次makefile的目录结构如下图:
二、protobuf-c的目录在其他路径
三、makefile编写如下
# Makefile for target test
CC=gcc
# target_name
TARGET = test
# src_names
SRCS= $(wildcard *.c) $(wildcard ../protobuf-c/%.c)
# Include_heads
INCLUDE = -I ../protobuf-c/
# 静态模式规则 --- 变量OBJS集合下的所有.c 替换为 .o文件
OBJS=$(SRCS:.c=.o)
# 第一行的依赖关系,相当于test:*.o
# 第二行规则:
# 1. $@ :表示目标文件
# 2. $^ : 表示所有的依赖文件
# 3. $< :表示第一个依赖文件
$(TARGET):$(OBJS)
$(CC) -o $@ $^ $(INCLUDE)
# .PHONY:伪目标
# make clean:删除*.o和目标文件test
.PHONY:clean
clean:
rm -rf $(OBJS) $(TARGET)