-
工程文件结构如下
-
Project
- inc/
- xxx.h
- xxx.h
- imp/
- xxx.cpp
- xxx.cpp
- Makefile
- inc/
-
Makefile内容
CXX = g++
DEBUG = -g -O2
CFLAGS = $(DEBUG) -Wall -c
RM = rm -rf
# 所有源文件
# wildcard,在变量的定义或函数引用时,使通配符生效
SRCS = $(wildcard ./imp/*.cpp)
# patsubst 替换通配符 a.cpp替换为a.o
OBJS = $(patsubst %.cpp, %.o, $(SRCS))
# include路径 -I+路径
HEADER_PATH = -I./inc/
# 目标程序名
TARGET = Test
# make
$(TARGET) : $(OBJS)
$(CXX) $^ -o $@
$(OBJS):%.o : %.cpp
$(CXX) $(CFLAGS) $< -o $@ $(HEADER_PATH)
# make clean
clean:
$(RM) $(TARGET) ./imp/*.o