## desc: 可以显示编译过程,最终生成可执行文件hello
GXX := g++ INCLUDE_FILE := ./%.h SRC_FILES := $(wildcard *.cpp) OBJ_FILES=$(SRC_FILES:%.cpp=./.objs/%.o) TARGET := hello CFLAGS=-I./ -Wall -Werror -fPIC -ggdb LIB := -L../lib/ -lztxmath -L../lib/ -lztxshow $(TARGET) : $(SRC_FILES) $(OBJ_FILES) $(GXX) -g -o $(TARGET) $(OBJ_FILES) $(LIB) $(DEP_FILES): ./%.d : ./%.cpp @echo "generate dependence $@" @printf "../" > $@.tmp @$(GXX) -MM $< $(CFLAGS) >> $@.tmp 2> /dev/null @mv $@.tmp $@ $(OBJ_FILES) : ./.objs/%.o : ./%.cpp $(GXX) -o $@ -c $< $(CFLAGS) clean: -rm $(TARGET) $(OBJ_FILES)sinclude $(DEP_FILES)
######################## makefile end ###########################
生成的可执行文件的结果如下:
jackiexiao@debian:/opt/jackiexiao/makefile/src/hello$ ./hello hello.world this is a int type, value:3 this is a string type, value:hellowow_youare_great