代码:
CXX := g++
CFLAGS := -g
TARGET := xxx.exe
SRCS := $(wildcard *.cpp)
OBJS := $(patsubst %cpp,%o,$(SRCS))
all:$(TARGET)
%.o:%.cpp
$(CXX) $(CFLAGS) -c $<
$(TARGET):$(OBJS)
$(CXX) $(CFLAGS) -o $@ $^
clean:
rm -rf $(TARGET) *.o
操作:
make xxx.exe
解释
TARGET := xxx.exe 是最终的可执行文件的名称,可以根据需要修改
SRCS := $(wildcard *.cpp) 所有的cpp文件
OBJS := $(patsubst %cpp,%o,$(SRCS)) 所有的.o文件
all:$(TARGET) 相当于一个代码段的标志
%.o:%.cpp 将每个cpp编译成一个.o文件
$(CXX) $(CFLAGS) -c $<
$(TARGET):$(OBJS) 将所有.o链接成一个可执行文件
$(CXX) $(CFLAGS) -o $@ $
clean: 输入 make clean 执行这段,删除之前的内容
rm -rf $(TARGET) *.o