Я пытался использовать новые функции Qt openCV 2.2 (см. http://opencv.willowgarage.com/documentation/cpp/qt_new_functions.html#index-1384) для проекта, но я получаю сообщение об ошибке:
1> main.cpp 1> main.obj: ошибка
LNK2019: неразрешенный внешний символ
"void __cdecl
резюме :: displayStatusBar (класс
станд :: basic_string, класс
std :: allocator> const &, class
станд :: basic_string, класс
std :: allocator> const &, int) "
(? DisplayStatusBar @ резюме @@ YAXABV? $ Basic_string @ DU? $ Char_traits @ D @ станд @@ V? $ Распределитель @ D @ 2 @@ станд @@ 0H @ Z)
упоминается в функции _main
1> C: \ Documents and Settings \ Orange \ my
документы \ визуальная студия
2010 \ Projects \ FYP \ FYP.exe: смертельный исход
ошибка LNK1120: 1 неразрешенная внешность
Я использую Visual Studio 2010, Windows XP, QT 4.7.1 и OpenCV 2.2.
Я уже добавил основные lib-файлы для openCV и qt в настройках своего проекта в свойствах> Linker> Input. Я попытался скомпилировать и запустить код openCV без каких-либо проблем, кроме случаев, когда я пытался использовать новые функции Qt, такие как displayStatusBar (...) и createButton (...). Я искал решение в течение нескольких дней и до сих пор не смог найти его, возможно, потому что openCV2.2 был выпущен только недавно. Кто-нибудь пробовал и сталкивался с этой проблемой и есть решение?
Кстати, причина, по которой я хочу использовать предоставляемые openCV функции для создания простых окон и кнопок вместо qt, заключается в том, что я хочу избежать необходимости конвертировать данные типа Mat в openCV и QImage в Qt.
Заранее спасибо за любые ответы.
Прикрепленный код:
#include <cv.h>
#include <highgui.h>
using namespace cv;
int main()
{
namedWindow("Test", CV_WINDOW_AUTOSIZE);
// ...
// Code links without problem when the following line is commented out.
displayStatusBar("Test", "Hello World", 5000);
return 0;
}