0

この問題については多くの疑問があります。しかし、私は自分が何をしているのかはっきりと理解していません。

ここから aruco_msvc10 をインストールしました。次に、以下の手順を使用して vs2010 を統合します。

  1. Win32 コンソール アプリケーションを作成する
  2. [Configuration Manager...] を選択し、x64 プラットフォームを追加します
  3. リリース時、
    3.1. 構成プロパティ ---- C/C++ ---- 追加のインクルード ディレクトリで、aruco_msvc2010/include、msvc2010/include/aruco を追加します。

    3.2. Configuration Properties ---- Linker ---- Additional Library Directories で、ライブラリ フォルダー aruco_msvc2010\lib を追加します。

    3.3 構成フィールドで、リリース モードを選択し、aruco124.lib を追加します。

  4. . システム環境パスに aruco_msvc2010\bin を追加

次に、コードを実行すると、エラーが発生しますerror LNK2001: unresolved external symbol "public: __cdecl aruco::MarkerDetector::MarkerDetector(void)" (??0MarkerDetector@aruco@@QEAA@XZ)

私のプロジェクトには main.cpp ファイルが 1 つしかありません。markerDetector.h ファイルをプロジェクトに追加する必要がありますか?

コード :

#include <iostream>
#include <opencv2/opencv.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2\highgui\highgui.hpp>
#include <aruco\aruco.h>
#include <aruco\cvdrawingutils.h>
using namespace cv;

int main()
{
VideoCapture cap(0); // open the default camera
int iSliderValue1 = 50, iSliderValue2 = 255;
Mat thresholdImage;
Mat frame;
aruco::MarkerDetector marker;
std::cout << "---------------- \n";
return 0;
}
4

1 に答える 1

0

いくつかの可能性:

  • lib をリリース構成に追加していますが、デバッグ ビルドを実行しようとしています。

  • 追加しているライブラリがビルドと一致していません (例: デバッグ/リリースまたは 32/64 ビットの不一致)

  • libファイルを正しい場所に追加していません(リンカーの追加の依存関係の下)

于 2015-02-17T09:43:04.520 に答える