Makefile中的注意事项
对C文件 CFLAGS 和 CPPFLAGS 效果相同,对C++文件就只识别 CPPFLAGS 。
#错误案例
CC=g++
CFLAGS=-std=c++11
run:stl
./stl
OBJ=stl.o
stl:$(OBJ)
$(CC) $^ -o $@ $(CFLAGS)
.PHONY: clean
clean:
rm -rf ./*.o stl
#正确案例
CC=g++
CPPFLAGS=-std=c++11 #
run:stl
./stl
OBJ=stl.o
stl:$(OBJ)
$(CC) $^ -o $@ $(CPPFLAGS)
.PHONY: clean
clean:
rm -rf ./*.o stl