all:main # 一般makefile中的第一个目标都是all:可执行文件
# 为了保证,最后Makefile文件执行后一定会生成一个可执行文件main:main.o add.o gcc main.o add.o -o main
main.o:main.cgcc -c main.c -o main.o
add.o:add.cgcc -c add.c -o add.oclean: # 删除生成的中间文件和可执行文件rm *.o main
EXE=main # 保存可执行文件
OBJS=main.o add.o
CC=gcc # Makefile中表示使用的编译器
CFLAGS=-c -g -Wall -o # -g:调试 -Wall:显示警告all:$(EXE)
$(EXE):$(OBJS)$(CC) $(OBJS) -o $(EXE)
main.o:main.c$(CC) $(CFLAGS) main.o main.c
add.o:add.c$(CC) $(CFLAGS) add.o add.cclean:$(RM) $(OBJS) $(EXE)
EXE=main # 保存可执行文件
OBJS=main.o add.o
CC=gcc # Makefile中表示使用的编译器
CFLAGS=-c -g -Wall -o # -g:调试 -Wall:显示警告all:$(EXE)
$(EXE):$(OBJS)$(CC) $^ -o $(EXE)
%.o:%.c$(CC) $(CFLAGS) $@ $<.PHONY:clean
clean:$(RM) $(OBJS) $(EXE)
EXE=fun # 保存可执行文件
OBJS=main.o fun.o fun1.o
CC=gcc # Makefile中表示使用的编译器
CFLAGS=-c -g -Wall -o # -g:调试 -Wall:显示警告all:$(EXE)
$(EXE):$(OBJS)$(CC) $^ -o $(EXE)
%.o:%.c$(CC) $(CFLAGS) $@ $<.PHONY:clean
clean:$(RM) $(OBJS) $(EXE)