直接上例子:
APP = main
INCLUDE = /home/fzd/Downloads/eigen-3.4.0
CXXFLAGS=“-O2”
APP_OBJS = main.o csm.o
LDLIBS+=-lpthread
LDLIBS+=-lm
all: build
build: $(APP)
$(APP): $(APP_OBJS)
$(CXX) $(CXXFLAGS) -I $(INCLUDE) -o $@ $(APP_OBJS) $(LDFLAGS) $(LDLIBS)
%.o: %.cpp
$(CXX) $(CXXFLAGS) -I $(INCLUDE) -c $< -o $@
clean:
rm -f $(APP) *.o
注意,上边makefile里有三处提到CXXFLAGS.之前一直以为,只要申明CXXFLAGS = "-O2"就可以,结果捣鼓半天发现还得在生成.o与执行文件的地方添加该选项.