1

複数のソース ファイルとヘッダー ファイルのプロジェクトがあり、必要な外部ライブラリとヘッダー (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)
4

1 に答える 1

1

Eclipse はエラーを素早く見つけようとしますが、常に更新しているわけではありません。Eclipse のエラー メッセージだけに頼らないでください。

たとえば、プロジェクトにファイルを追加したばかりの場合、Eclipse は、実際にはファイルが存在するのに、そのファイルを見つけることができなかったとまだ伝えている可能性があります。

Project -> Clean を使用して、Eclipse のエラー チェックを更新します。

于 2012-12-06T20:22:35.777 に答える