1

Visual Studio 2012 を使用しています。エラーが発生しました

LNK1112: module machine type 'x64' conflicts with target machine type
'X86'highgui248d.lib(opencv_highgui248d.dll)' while building a win32 
console application.

open_cv アプリケーションの要件に合わせてプロパティを変更しようとしました。

4

2 に答える 2

1

これがあなたの問題に対する答えです。おそらく、ビルド構成マネージャーでプラットフォームを変更する必要があります https://stackoverflow.com/a/4364020/3724463

于 2015-03-15T15:34:25.743 に答える
0

この厄介な問題の解決策を見つけました。以下の手順に従ってください。

  1. プロジェクト プロパティ -> VC++ ディレクトリ ->ライブラリ ディレクトリで、 x64 ビルド パスのみが含まれていることを確認します。含まれていない場合は、x86 ビルド パス (C:\opencv2413\build\x64\vc12\lib のようなもの) を削除してください。システム内の OpenCV の抽出パスに追加します。

  2. プロジェクト プロパティ -> リンカー -> 一般 ->追加のライブラリ ディレクトリで、このようにx86 ではなくx64 に設定されていることを確認します ($(OPENCV_BUILD)\x64\vc12\lib)。

  3. プロパティ シートを追加した場合は、上記の手順を同じものに適用します。

  4. プロパティ マネージャで Release|Win32 と Debug|Win32 (または Release|X86 と Debug|X86) を削除します。

  5. Release または Debug x64 を使用してプロジェクトをビルドします。

これでうまくいかない場合はお知らせください。喜んでお手伝いさせていただきます。

于 2016-10-27T05:26:41.877 に答える