.PHONY : all
$(OUTDIR):
mkdir $@
$(OUTDIR)/$(OUTBINNAME):$(OBJECTS)
$(LINK) $@ $(OBJECTS) $(LINETHREAD)
@echo "Finished!"
@echo "Binfile is $(OUTDIR)/$(OUTBINNAME)!"
$(OUTDIR)/main.o:main.c
$(CC) $(CFLAG) $@ $<
$(OUTDIR)/%.o:$(SRCS)
$(CC) $(CFLAG) $@ $(*F)/$(*F).c
clean:
@rm -rf obj
@echo "$(OUTDIR) has been deleted!"
======================= Makefile 领悟 =========================================================
edit(最终目标) : main.o kbd.o command.o display.o insert.o search.o files.o utils.o (最终目标文件的依赖文件是中间文件)
cc -o edit main.o kbd.o command.o display.o insert.o search.o files.o utils.o //由很多.o文件生成最终目标文件
main.o : main.c defs.h
cc -c main.c //没有.o,难道是隐晦规则中的把.o直接变成当前目标了
================================================================================================