我有一个makefile如下:编译错误,包括没有显示出来
CC = gcc
CFLAGS = -fmessage-length=0 -MMD -MP -MF"$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" $(INCLUDES)
ifdef DEBUG
CFLAGS += -g3
endif
INCLUDES = \
-I../config.include \
-I../log.include \
-I../services.include
SRC_DIR = src
BIN_DIR = bin
BINARY = report
SRCS = $(shell ls $(SRC_DIR)/*.cpp)
OBJS = $(SRCS:%.cpp=%.o)
all: $(OBJS)
@mkdir -p $(BIN_DIR)
$(CC) $(OBJS) -o $(BIN_DIR)/$(BINARY)
clean:
rm -rf $(BIN_DIR) $(OBJS)
然而,当我运行make,我得到的错误:
g++ -c -o src/report.o src/report.cpp
src/report.cpp:40:20: error: log.h: No such file or directory
src/report.cpp:41:28: error: services.h: No such file or directory
src/report.cpp:41:28: error: config.h: No such file or directory
我知道的一个事实头文件在那里,并且它们包含正确。路径也是正确的。 makefile有问题,但我无法弄清楚什么。
请注意,即使我设置CC = gcc,输出总是g ++。这不是一个错字,它实际上是我得到的输出 - 再次,不知道为什么。
帮助!
谢谢!我对Makefiles没有太多经验,但这应该是一个暗示。 – Sagar 2010-10-14 17:34:05