0

Visual Studio 2012 IDE の Visual C++ プロジェクトで OpenCV 2.4.5 を使用しています。私のプロジェクトはDEBUGモードでは正しく動作しますが、 RELEASEモードでは次のコンパイル エラーが発生します。

エラー LNK1181: 入力ファイル 'opencv_core245.lib' を開けません

次に、OpenCV をインストールし、環境変数を次のように設定しました。

  1. 次のシステム変数を作成しました:パス C:\ opencv \build\ を持つOPENCV_BUILD
  2. Path変数に次を追加しました: C:\opencv\build\x86\vc11\bin

次に、Visual Studio 2012 で、次のようにデバッグ モード用の新しいプロパティ シートを作成しました。

[表示] >> [プロパティ マネージャー] を 右クリック[デバッグ] >> [新しいプロジェクトのプロパティ シートを追加] をクリック

次に、プロパティ シートを次のように編集しました。

C/C++ >> 一般 >> 追加のインクルード ディレクトリ: $(OPENCV_BUILD)\include;%(AdditionalIncludeDirectories)

リンカー >> 一般 >> 追加のライブラリ ディレクトリ: $(OPENCV_BUILD)\x86\vc11\lib;%(AdditionalLibraryDirectories)

Linker >> Input >> Additional Dependencies: opencv_core245d.lib;opencv_imgproc245d.lib;opencv_highgui245d.lib;opencv_ml245d.lib;opencv_video245d.lib;opencv_features2d245d.lib;opencv_calib3d245d.lib;opencv_objdetect245d.lib;opencv_contrib245d.lib;opencv_legacy245d.lib;opencv_flann245d .lib;%(追加の依存関係)

リリース モード用の新しいプロパティ シートを作成するために同じ手順に従いました (プロジェクト プロパティの編集にも同じ手順に従いました) が、 リンカー >> 入力 >> 追加の依存関係については、各 .lib ファイル名から「d」を省略しました(たとえば、opencv_core245d.lib ではなく、opencv_core245.lib)。

私のコードでは、通常、次のようにファイルを含めます。 #include <opencv2\highgui\highgui.hpp>

前述したように、DEBUG モードではすべて正常に動作しますが、RELEASE モードでは次のコンパイル エラーが発生します。

エラー LNK1181: 入力ファイル 'opencv_core245.lib' を開けません

このフォーラムで他の多くの投稿を読みましたが、何も機能していないようです。誰か助けてください、私は本当に必死です。

4

6 に答える 6

0

わかりました、私も実際にこの問題を抱えていました。上記の答えが解決策になると思いました。見つけるのは簡単ではありませんでしたが、過去に抱えていた同じ問題を解決するのに役立つチュートリアル ビデオを見つけることができました。

ビデオはこちら: http://www.youtube.com/watch?v=cgo0UitHfp8

これが役に立てば幸いです。もう一度、どうなるか教えてください (:

于 2013-10-06T10:28:53.747 に答える
0

answer.opencv.org で関連する質問に答えようとしました。

http://answers.opencv.org/question/11766/release-mode-error-c1083-cannot-open-include-file/?answer=25829#post-id-25829

簡単に言うと、破損したプロパティ ファイルを処理するときに、VS2012 にバグがある可能性があります。プロパティ ファイルを再構築してみてください。

于 2013-12-24T03:45:13.973 に答える
0

ビジュアル スタジオで opencv. を使い始めたときも同じ問題を抱えていました。プロパティ マネージャーを見ると、マシン アーキテクチャが x64 で、 x64 でプロパティ シートのプロパティを設定する場合、プロパティ シートが release|win32 ではなく release|x64 に追加されていることを確認する必要があります。

マシン アーキテクチャが x86 で、プロパティ シートに x86 でプロパティを設定している場合は、プロパティ シートが release|x64 ではなく release|win32 に追加されていることを確認する必要があります。それが役立つことを願っています

于 2014-12-12T18:15:14.023 に答える
0

最初に、[表示] -> [プロパティ ページ] -> [構成プロパティ] -> [リンカー] -> [入力] に移動してみてください。

追加の依存関係の下に「opencv_core245.lib」を追加します

うまくいかない場合は、「リンカー、入力」に含めた .dll または .libs のすべてのディレクトリを「リンカー、一般、追加ライブラリ ディレクトリ」に追加してみてください。

それがどうなるか教えてください。乾杯!(:

于 2013-10-06T09:13:46.077 に答える