Прежде всего, я уже проверил многие вопросы LinkerError в stackoverflow. Но все кажется связанным с моей стороны. Позвольте мне поделиться некоторой информацией:LinkerErrors on opencv3.0 включен проект
Код:
#include<opencv\cv.h>
#include<opencv\highgui.h>
void main(){
IplImage* img = cvLoadImage("C:\kaplan.jpg");
cvNamedWindow("ImgDisp", CV_WINDOW_AUTOSIZE);
cvShowImage("ImgDisp", img);
cvWaitKey(0);
cvReleaseImage(&img);
cvDestroyWindow("ImgDisp");
}
Системные настройки:
- Конфигурация: Debug
- Платформа: x64
VC++ Каталоги -> Исполняемые каталоги = C : \ opencv \ build \ x64 \ vc12 \ bin; $ (ExecutablePath)
VC++ Каталоги -> Библиотека каталогов =
C: \ OpenCV \ построить \ x64 \ VC12 \ staticlib; C: \ OpenCV \ построить \ x64 \ VC12 \ LIB; $ (LibraryPath)C/C++ -> Общие -> Additional Include каталоги =
C: \ OpenCV \ построить \ включать \ opencv2; C: \ OpenCV \ построить \ Include; C: \ OpenCV \ построить \ включать \ OpenCV;% (AdditionalIncludeDirectories)Linker -> General -> Дополнительные каталоги библиотек =
C: \ opencv \ build \ x64 \ vc12 \ staticlib; C: \ opencv \ build \ x64 \ vc12 \ lib;% (AdditionalLibraryDirectories)Компоновщик -> Ввод -> Дополнительные зависимости =
opencv_calib3d300d.lib; opencv_core300d.lib; opencv_features2d300d.lib; opencv_flann300d.lib; opencv_hal300d.lib; opencv_highgui300d.lib; opencv_imgcodecs300d.lib; opencv_imgproc300d.lib; opencv_ml300d. Lib; opencv_objdetect300d.lib; opencv_shape300d.lib; opencv_stitching300d.lib; opencv_superres300d.lib; opencv_ts300d.lib; opencv_video300d.lib; opencv_videoio300d.lib; opencv_videostab300d.lib;% (AdditionalDependencies), полученные
Ошибка:
1> opencv_imgcodecs300d.lib (loadsave.obj): ошибка LNK2005: "общественность: __cdecl станд :: _ Container_base12 :: _ Container_base12 (аннулируются)" (?? 0_Container_base12 @ станд @@ QEAA @ XZ) уже определены в msvcprtd. Lib (MSVCP120D.dll)
1> opencv_core300d.lib (stat.obj): ошибка LNK2019: неразрешенный внешний символ ippicviNormDiff_L2_8s_C3CMR ссылки в функции «двойной __cdecl резюме :: норма (класс резюме :: _ InputArray Const &, класс резюме :: _ InputArray Const &, ИНТ, класс резюме :: _ InputArray Const &)» (? норма @ резюме @@ YANAEBV_InputArray @ 1 @ 0H0 @ Z)
1> opencv_core300d.lib (matmul.obj): ошибка LNK2019: неразрешенный внешний символ ippicviDotProd_32s64f_C1R ссылки в функции "двойной __cdecl резюме :: dotProd_32s (интермедиат сопз *, внутр сопз *, Int)" (dotProd_32s @ резюме @ @ YANPEBH0H @ Z)
1> c: \ users \ juhsis \ documents \ visual studio 2013 \ Projects \ Project1 \ x64 \ Debug \ Project1.exe: фатальная ошибка LNK1120: 528 нерешенных внешних
Итак, что я пропустил?
Являются ли файлы opencv в библиотечных каталогах, которые вы там дали? Лично я бросаю .libs со всеми VS, поэтому мне не нужно разбираться с подобными вещами. – twentylemon
Да, я установил каталог opensv libs и дважды проверял файлы. Я также копирую и вставляю все библиотеки в VS 2013. Ничего не меняется. @twentylemon –
используйте eithers staticlibs или динамические, а не оба – berak