2016-01-28 2 views
0

Я провел последние два дня, пытаясь заставить opencv работать. Im, используя сообщество visual studio 2015 и opencv 3.1.0. Я добавил все файлы lib и dll и настроил свойства для проекта. Любое понимание было бы здорово, поскольку я действительно не знаю, как это исправить.неразрешенный символ для ошибки opencv

#include <opencv2\opencv.hpp> 

using namespace cv; 

int main() 
{ 
    namedWindow("win"); 
    waitKey(0); 
    return 1; 
}  

Приведенный выше код вызывает следующую ошибку.

LNK2019 unresolved external symbol "void __cdecl cv::namedWindow(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,int)" ([email protected]@@[email protected][email protected]@[email protected]@[email protected]@[email protected]@[email protected]@[email protected]) referenced in function main OpenCV

+2

необходимо связать opencv_highgui310 (d) .lib или opencv_world310 (г) .lib – Miki

ответ

0

namedWindow принадлежит highgui библиотеке. Попробуйте добавить

#include<opencv2\highgui.hpp> 

а также соедините соответствующую библиотеку.

Кроме того, namedWindow имеет два аргумента: "windowName" и CV_WINDOW_TYPE, где последний может быть:

CV_WINDOW_AUTOSIZE 
CV_WINDOW_NORMAL 

и некоторые другие параметры

+0

Ive связала библиотеку, я все равно получаю ту же ошибку. Ive также добавил второй аргумент функции, и это бесполезно. Любые другие предложения? –

+0

'unresolve external symbol 'очень вероятно из-за того, что вы не связывали * библиотеку *. В вашем коде вы связали файл заголовка, но библиотека по-прежнему отсутствует. –