crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> QtCreator И OpenCV.
Sidny Sho
  опции профиля:
сообщение 17.3.2011, 19:48
Сообщение #1


Новичок


Группа: Новичок
Сообщений: 4
Регистрация: 17.3.2011
Пользователь №: 2512

Спасибо сказали: 0 раз(а)




Репутация:   0  


Привет всем. Решил побаловатся машинным зрением. Выбор пал на связку openc+qt. Вроде все нормально установил, все сдк и либы. Opencv библиотеки тоже без проблем скомпилировались и установились. Система: винда 7, компилятор mingw. пример вот:
Раскрывающийся текст
Код
#include <QtCore/QCoreApplication>
#include <opencv/cv.h>
#include <opencv/highgui.h>
#include <opencv/cxcore.hpp>
#include <windows.h>
#include <QtTest>


using namespace cv;

int _tmain(int argc, _TCHAR* argv[])

{

cv::Mat M(7,7,CV_32FC2,Scalar(1,3));

return 0;

}



Настройки проекта:
QT -= gui
QT += testlib
TARGET += vbAPI
CONFIG += console \
          qtestlib
CONFIG -= app_bundle
TEMPLATE += app
INCLUDEPATH += C:\Users\mastak\temp\OpenCV-2.2.0\MinGW-build\include \
               C:\Users\mastak\temp\OpenCV-2.2.0\MinGW-build\include\opencv
LIBS += C:\Users\mastak\temp\OpenCV-2.2.0\MinGW-build\lib\libopencv_core220.dll.a \
        C:\Users\mastak\temp\OpenCV-2.2.0\MinGW-build\lib\libopencv_highgui220.dll.a
SOURCES += \
    main.cpp


Выдаваемая ошибка:
c:/qt/mingw/bin/../lib/gcc/mingw32/4.4.0/../../../libmingw32.a(main.o):main.c:(.text+0x104): undefined reference to `WinMain@16'
collect2: ld returned 1 exit status
mingw32-make[1]: Leaving directory `C:/Users/mastak/Documents/QtCreator/ocv1/untitled-build-desktop'
mingw32-make: Leaving directory `C:/Users/mastak/Documents/QtCreator/ocv1/untitled-build-desktop'
mingw32-make[1]: *** [debug\untitled.exe] Error 1
mingw32-make: *** [debug] Error 2
Процесс "C:\Qt\mingw\bin\mingw32-make.exe" завершился с кодом 2.
Возникла ошибка при сборке проекта untitled (цель: Настольный компьютер)
Во время выполнения сборки на этапе "Сборка"

Насколько я понимаю проблема при линковке. Только не знаю как исправить.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
RazrFalcon
  опции профиля:
сообщение 17.3.2011, 20:00
Сообщение #2


Zombie Mod
*****

Группа: Участник
Сообщений: 1654
Регистрация: 24.5.2010
Из: Харьков
Пользователь №: 1752

Спасибо сказали: 64 раз(а)




Репутация:   212  


А как же остальные библиотеки, их же там не две.
linux
libopencv_calib3d.so
libopencv_contrib.so
libopencv_core.so
libopencv_flann.so
libopencv_gpu.so
libopencv_highgui.so
libopencv_imgproc.so
libopencv_legacy.so
libopencv_ml.so
libopencv_objdetect.so
libopencv_video.so



Так же, поиск.

Сообщение отредактировал RazrFalcon - 17.3.2011, 20:14
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Sidny Sho
  опции профиля:
сообщение 17.3.2011, 20:39
Сообщение #3


Новичок


Группа: Новичок
Сообщений: 4
Регистрация: 17.3.2011
Пользователь №: 2512

Спасибо сказали: 0 раз(а)




Репутация:   0  


это я все видел. И подключение всех библиотек не помогает. Вроде не на библиотеки же ругается....
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
RazrFalcon
  опции профиля:
сообщение 17.3.2011, 20:59
Сообщение #4


Zombie Mod
*****

Группа: Участник
Сообщений: 1654
Регистрация: 24.5.2010
Из: Харьков
Пользователь №: 1752

Спасибо сказали: 64 раз(а)




Репутация:   212  


undefined reference - это как раз и библиотека.

Так не пробовали?
LIBS = -L"C:\Users\mastak\temp\OpenCV-2.2.0\MinGW-build\lib" -lcv -lhighgui


Сообщение отредактировал RazrFalcon - 17.3.2011, 21:06
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Sidny Sho
  опции профиля:
сообщение 17.3.2011, 21:58
Сообщение #5


Новичок


Группа: Новичок
Сообщений: 4
Регистрация: 17.3.2011
Пользователь №: 2512

Спасибо сказали: 0 раз(а)




Репутация:   0  


Попробовал, но выдает:
c:/qt/mingw/bin/../lib/gcc/mingw32/4.4.0/../../../../mingw32/bin/ld.exe: cannot find -lcv
collect2: ld returned 1 exit status
mingw32-make[1]: *** [release\untitled.exe] Error 1
mingw32-make: *** [release] Error 2
Процесс "C:\Qt\mingw\bin\mingw32-make.exe" завершился с кодом 2.
Возникла ошибка при сборке проекта untitled (цель: Настольный компьютер)
Во время выполнения сборки на этапе "Сборка"
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
RazrFalcon
  опции профиля:
сообщение 17.3.2011, 22:02
Сообщение #6


Zombie Mod
*****

Группа: Участник
Сообщений: 1654
Регистрация: 24.5.2010
Из: Харьков
Пользователь №: 1752

Спасибо сказали: 64 раз(а)




Репутация:   212  


А примеры собирать не пробовали. Просто ваш код какой то странный, хотя сомневаюсь что в этом проблема. Пока что он просто не видит либ, значит путь не правильный.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Sidny Sho
  опции профиля:
сообщение 18.3.2011, 1:27
Сообщение #7


Новичок


Группа: Новичок
Сообщений: 4
Регистрация: 17.3.2011
Пользователь №: 2512

Спасибо сказали: 0 раз(а)




Репутация:   0  


Что то ничего из примеров не собирается:( Например вот выводит при сборке:
Выполняется сборка проекта untitled...
Запускается "c:\qt\desktop\qt\4.7.2\mingw\bin\qmake.exe" C:\Users\mastak\Documents\QtCreator\ocv1\untitled\untitled.pro -r -spec win32-g++ CONFIG+=debug_and_release QMLJSDEBUGGER_PATH=C:/Qt/QtCreator/share/qtcreator/qml/qmljsdebugger
WARNING: c:\Users\mastak\Documents\QtCreator\ocv1\untitled\untitled.pro:9: Unescaped backslashes are deprecated.
WARNING: c:\Users\mastak\Documents\QtCreator\ocv1\untitled\untitled.pro:9: Unescaped backslashes are deprecated.
WARNING: c:\Users\mastak\Documents\QtCreator\ocv1\untitled\untitled.pro:9: Unescaped backslashes are deprecated.
Процесс "c:\qt\desktop\qt\4.7.2\mingw\bin\qmake.exe" завершился нормально.
Запускается "C:\Qt\mingw\bin\mingw32-make.exe" -w
mingw32-make: Entering directory `C:/Users/mastak/Documents/QtCreator/ocv1/untitled-build-desktop'
C:/Qt/mingw/bin/mingw32-make -f Makefile.Release
mingw32-make[1]: Entering directory `C:/Users/mastak/Documents/QtCreator/ocv1/untitled-build-desktop'
mingw32-make[1]: Nothing to be done for `first'.
mingw32-make[1]: Leaving directory `C:/Users/mastak/Documents/QtCreator/ocv1/untitled-build-desktop'
mingw32-make: Leaving directory `C:/Users/mastak/Documents/QtCreator/ocv1/untitled-build-desktop'
Процесс "C:\Qt\mingw\bin\mingw32-make.exe" завершился нормально.

но при запуске приложения:
Запускается C:\Users\mastak\Documents\QtCreator\ocv1\untitled-build-desktop\release\untitled.exe...
C:\Users\mastak\Documents\QtCreator\ocv1\untitled-build-desktop\release\untitled.exe завершился с кодом -1073741515

Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Гость_Sht1rlitz_*
сообщение 22.8.2011, 10:55
Сообщение #8





Гости








    


пути в переменных средах прописаны? :)
Выдержка из opencv readme:
Цитата
Notes:
1) Add build\bin and one of build\{x86|x64}\{vc9\vc10\mingw}\bin to your system path (to use DLLs)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
PAFOS
  опции профиля:
сообщение 22.8.2011, 11:19
Сообщение #9


Активный участник
***

Группа: Участник
Сообщений: 258
Регистрация: 27.12.2010
Из: Дмитров
Пользователь №: 2309

Спасибо сказали: 29 раз(а)




Репутация:   8  


у тебя неправильно названа функция main

Цитата
int _tmain(int argc, _TCHAR* argv[])


поэтому и возникает ошибка

Цитата
c:/qt/mingw/bin/../lib/gcc/mingw32/4.4.0/../../../libmingw32.a(main.o):main.c:(.text+0x104): undefined reference to `WinMain@16'


т.е. не найдена ссылка на WinMain.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 22.8.2019, 18:25