IPB
ЛогинПароль:

 
 Ответить  Открыть новую тему 
> Code::Blocks и OpenCV, underfined reference to ...
Игорь
сообщение 13.02.2012 20:20
Сообщение #1


Пионер
**

Группа: Пользователи
Сообщений: 56
Пол: Мужской

Репутация: -  2  +


Вобщем, пытаюсь пользоваться opencv, но не получается. Проблема вроде-как в линковке т.к. выползает очень много "underfined reference to".

Вот как настраивал (компилятор, кстати, MinGW):

1) Создал глобальную переменную cv, где:

base C:\CV\opencv
include $(#cv)\build\include
lib $(#cv)\build\x86\mingw\lib

2) Настроил компилятор:

Comp. and debug. --> Search dir. --> Compiler добавил $(#cv.include)
Comp. and debug. --> Search dir. --> Linker добавил $(#cv.lib)

Код (на C):

Спойлер (Показать/Скрыть)


Вывод:
Спойлер (Показать/Скрыть)


Наверное опять что-то упустил.
В линуксе всё это как-то поще было по-моему.... Избаловал он меня....
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
IUnknown
сообщение 13.02.2012 20:58
Сообщение #2


a.k.a. volvo877
*****

Группа: Пользователи
Сообщений: 1 013
Пол: Мужской

Репутация: -  627  +


OpenCV 2.3.1, установлена в D:\opencv\opencv

+
Прикрепленное изображение

+ в Project->Build options -> Linker settings добавлены библиотеки
mingw/lib/libopencv_highgui231.dll.a
mingw/lib/libopencv_core231.dll.a

= результат на скрине... smile.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Игорь
сообщение 14.02.2012 16:23
Сообщение #3


Пионер
**

Группа: Пользователи
Сообщений: 56
Пол: Мужской

Репутация: -  2  +


Что-бы хоть как-то скомпилировать пришлось, помимо твоих двух библиотек, добавил C:\CV\opencv\build\x86\mingw\lib\libopencv_imgproc231.dll.a , теперь куча сообщений типа оно объявлено, но не используется и при запуске жалуется, что libopencv_core231.dll не найден. Может что-то в других настройках?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
IUnknown
сообщение 14.02.2012 19:39
Сообщение #4


a.k.a. volvo877
*****

Группа: Пользователи
Сообщений: 1 013
Пол: Мужской

Репутация: -  627  +


Цитата
теперь куча сообщений типа оно объявлено, но не используется
Это предупреждения, ничего страшного. Хотя и странно. У меня подобного нет. Скорее всего - потому что я использую g++, а не gcc, эти предупреждения появляются только в случае gcc smile.gif

Цитата
и при запуске жалуется, что libopencv_core231.dll не найден
А это... Ты в переменную окружения PATH прописал путь к папке с DLL-ками? Я прописывал. И при запуске простейшей программы:
#include <stdio.h>
#include <opencv/cv.h>
#include <opencv/highgui.h>

int main(int argc, char* argv[])
{
IplImage* img = cvLoadImage("F:\\test\\pic.jpg", CV_LOAD_IMAGE_UNCHANGED);
if (!img) {
printf("Error: Could not open the image file! \n");
exit(1);
}

cvSmooth(img, img, CV_BLUR);
cvSaveImage("F:\\test\\blurred.jpg", img);

cvReleaseImage(&img);
return 0;
}

в папке наблюдаю замутненное изображение.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Игорь
сообщение 15.02.2012 18:35
Сообщение #5


Пионер
**

Группа: Пользователи
Сообщений: 56
Пол: Мужской

Репутация: -  2  +


Добавил пути к cv'шным и mingw'шным (потребовал ещё и libstdc++-6.dll) dll-кам. Стало запускаться, зато вылезает окошко: OpenCV - обнаружена ошибка (после появления окна, но до картинки). В доп. сведениях libopencv_highgui231.dll. Может надо указать путь к 3rdparty?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
IUnknown
сообщение 16.02.2012 10:46
Сообщение #6


a.k.a. volvo877
*****

Группа: Пользователи
Сообщений: 1 013
Пол: Мужской

Репутация: -  627  +


Что-то меня терзают смутные сомнения, что ты не пересобрал библиотеку перед тем, как ее использовать. А собирать ее надо тем же самым компилятором, которым будешь компилировать приложение: OpenCV Installation Guide
Цитата
Windows: <...> It is generally recommended to download the source .zip package and rebuild OpenCV from scratch using the same compiler that you use to build your applications.
Сделал это?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Игорь
сообщение 16.02.2012 13:14
Сообщение #7


Пионер
**

Группа: Пользователи
Сообщений: 56
Пол: Мужской

Репутация: -  2  +


Неа... Думал можно просто скачать и всё, а собирать для каких-то особых случаев. Сегодня, может, попробую.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Игорь
сообщение 16.02.2012 19:06
Сообщение #8


Пионер
**

Группа: Пользователи
Сообщений: 56
Пол: Мужской

Репутация: -  2  +


Наконец-то всё работает! По крайней мере, мне так кажется...

Цитата
Windows: <...> It is generally recommended to download the source .zip package and rebuild OpenCV from scratch using the same compiler that you use to build your applications.


В последней версии (2.3.1) этого .zip уже нет, всё есть в superpack (это я для тех, кто будет в подобной ситуации).

Ну а тебе, IUnknown, спасибо, в очередной раз. Хотя, как всегда виноват был я сам.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 



- Текстовая версия 6.11.2024 7:28
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"