yxr:搜集了不少makefile技巧,但是没有一个从头到尾,能够拿来就用的。工作需要,写了一个C++的简单makefile,记录下来,以备使用。
1)Makefile中有不少已经存在的缺省变量,比如CFLAGS,CC,LIBRARY(?)
2)
CC = gcc
ifdef LOGFILE
ERROLOG = 2>&1 >> $(LOGFILE)
endif
SRC = $(wildcard *.cpp) ### 列举所有cpp
SRC_O = $(SRC:cpp=o) ### 根据列举所有的cpp,将其后缀名换为.o
all:test ### 最后的程序名叫test
test: $(SRC_O) #产生test可执行文件
@echo $(SRC_O) ##打印所有已o结尾的文件
@$(CC) -o $@ $^ -lstdc++ #运行gcc 参数 -o , $@–目标文件,$^–所有的依赖文件,$<–第一个依赖文件。 -lstdc++ 应该是library stdc++吧
.c.o:
$(CC) -c $< -std=c++0x #所有.c生成.o文件
clean:
@rm -f *.o
@rm -f test
最新评论