我有一个包含多个源文件和头文件的项目,我通过指定所需的外部库和头文件(包含OpenCV头文件的目录和包含OpenCV库的目录)编写了我自己的Makefile。
当我开始编译项目时,它编译时没有任何错误。但是在编写代码时,Eclipse会报告OpenCV的某些功能上的错误,就好像它不知道这些功能一样。由于我在makefile中列出了所有必需的头文件和库(见下文),为什么会出现这个问题?
CXXFLAGS = -O3 -g -Wall -fmessage-length=0 -I./include -I/usr/local/include/opencv
LIBS = -L/usr/local/lib -lcv -lcvaux -lhighgui -lcxcore -limgproc
MAIN_PROG_OBJS = MainProgram.o src/Utilities.o src/ImageStream.o src/VideoStream.o
MAIN_PROG_TARGET = MainProgram
TEST_PROG_OBJS = TestProgram.o src/Utilities.o
TEST_PROG_TARGET = TestProgram
$(MAIN_PROG_TARGET): $(MAIN_PROG_OBJS)
$(CXX) -o $(MAIN_PROG_TARGET) $(MAIN_PROG_OBJS) $(LIBS)
$(TEST_PROG_TARGET): $(TEST_PROG_OBJS)
$(CXX) -o $(TEST_PROG_TARGET) $(TEST_PROG_OBJS) $(LIBS)
all: $(MAIN_PROG_TARGET) $(TEST_PROG_TARGET)
clean:
rm -f $(MAIN_PROG_OBJS) $(MAIN_PROG_TARGET) $(TEST_PROG_OBJS) $(TEST_PROG_TARGET)
答案 0 :(得分:1)
Eclipse尝试快速查找错误,但不会一直更新。不要只依赖Eclipse的错误消息。
例如,如果您刚刚将一个文件添加到项目中,Eclipse可能仍然会告诉您它无法找到该文件,而实际上它就在那里。
使用项目 - >清理以更新Eclipse的错误检查。