makefile 模板二
这个模板跟上一个比起来区别就是要一个.c一个地添加,.c文件太多的时候,就比较费劲 工程链接: https://github.com/jorinzou/MqttServer-and-MqttClient.git CC=gcc OBJ=MqttServer all:$(OBJ) HERE=./ incs=-I$(HERE) files:=$(HERE)/main.c files+=$(HERE)/SocketServer.c files+=$(HERE)/cJSON.c files+=$(HERE)/mqtt.c OBJS_C := $(patsubst %.c,%.o,$(files)) CFLAGS=-O0 -g CFLAGS+=$(incs) LDFLAGS=-lpthread LDFLAGS+=-lm LDFLAGS+=-ldl $(OBJ):$(OBJS_C) $(CC) $(LDFLAGS) -o $@ $^ $(OBJS_C):%.o:%.c $(CC) $(CFLAGS) -c $< -o $@ clean: rm -rf $(HERE)*.o rm -rf $(HERE)/$(OBJ) 来源: https://my.oschina.net/u/4149215/blog/3112083