私はこの問題を突き止めようと最後の 1 時間か 2 時間を費やしましたが、うまくいかないようです。私は MS VS 2012 RC で OpenCV を使用していますが、これまでのところ非常にうまく機能しています (新しい Mat コンテナーに関するバグが 1 つありますが、それ以外は問題ありません)。hereの cvblob.dll ライブラリを使用した (GCC/G++ から) 移植しようとしている、以前に作成したアプリケーションがあります。VS2012 で cvblob ライブラリを再コンパイルし (私の以前のバージョンは MinGW でコンパイルされ、問題なく動作しました)、DLL とインポート ライブラリ .LIB の両方を作成することができました。
アプリケーションは正しくコンパイルされますが、リンカーがライブラリ内の cvLabel 関数のシンボルを見つけることができないため、cvblob ライブラリを使用する 1 つの場所がエラーの原因になります。これは、VS2012 から取得した完全なエラー メッセージです。
ConsoleApplication1.cpp 1> コードを生成しています... 1>imageinput.obj: エラー LNK2019: 未解決の外部シンボル _cvLabel が関数で参照されています "public: class std::vector,class std::allocator > > _ thiscall ImageInput::getROI(class cv::Mat,class cv::Mat)" (?getROI@ImageInput@@QAE?AV?$vector@V?$Rect @H@cv@@V?$allocator@V?$Rect_@H@cv@ @@std@@@std@@VMat@cv@@0@Z) 1>C:\Users\Jake\Documents\Visual Studio 2012\Projects\ConsoleApplication1\Debug\ConsoleApplication1.exe: 致命的なエラー LNK1120: 1 つの未解決の外部
これが cvblob ライブラリ自体の問題なのか、それに対する現在のバイナリの問題なのか、それとも単にコンパイルに使用したプロセスの問題なのかはわかりません。リクエストに応じて、できる限りの情報を喜んで提供します。アドバイスありがとうございます!