Связывание библиотек OpenCV с Eclipse Ubuntu

Возможный дубликат:
OpenCV на Ubuntu 11.10

Мне очень тяжело пытаться установить OpenCV в Ubuntu. Я считаю, что я уже установил OpenCV; Тем не менее, я пытаюсь скомпилировать один из примеров программы kalman.cpp с Eclipse, и я не могу его скомпилировать. Я считаю, что моя проблема — связь с библиотеками.

Я видел много учебников, и я не понимаю, почему после установки opencv на мой компьютер, я получаю следующий вывод после использования команды pkg-confi opencv --libs:

manuel@manuel:~$ sudo pkg-config opencv --libs
/usr/local/lib/libopencv_calib3d.so
/usr/local/lib/libopencv_contrib.so /usr/local/lib/libopencv_core.so
/usr/local/lib/libopencv_features2d.so
/usr/local/lib/libopencv_flann.so /usr/local/lib/libopencv_gpu.so
/usr/local/lib/libopencv_highgui.so
/usr/local/lib/libopencv_imgproc.so /usr/local/lib/libopencv_legacy.so
/usr/local/lib/libopencv_ml.so /usr/local/lib/libopencv_nonfree.so
/usr/local/lib/libopencv_objdetect.so
/usr/local/lib/libopencv_photo.so
/usr/local/lib/libopencv_stitching.so /usr/local/lib/libopencv_ts.so
/usr/local/lib/libopencv_video.so
/usr/local/lib/libopencv_videostab.so

Каждый учебник там библиотеки выглядят как:

-L/where/you/have/installed/opencv/lib -lcxcore -lcv -lhighgui -lcvaux

Это действительно раздражает, потому что Eclipse не может найти библиотеку как libopencv_contrib.so. Это ждет чего-то как -lopencv_contrib

Я очень ценю помощь. Пожалуйста, дайте мне знать, что я делаю неправильно.

0

Решение

Я никогда не использовал OpenCV с Eclipse. Я в основном скомпилировал его, используя gcc или g ++ (в зависимости от c или C ++) файл.

для файла C,

$ gcc -ggdb `pkg-config --cflags opencv` -o `basename opencvtest.c .c` opencvtest.c `pkg-config --libs opencv`

для файла C ++,

$ g++ -ggdb `pkg-config --cflags opencv` -o `basename opencvtest.cpp .cpp` opencvtest.cpp `pkg-config --libs opencv`

Для получения дополнительной информации см. http://jayrambhia.wordpress.com/2012/05/08/beginning-opencv/

Если вам это удобно, я не думаю, что вам нужно использовать Eclipse.

Надеюсь это поможет.

0

Другие решения

Для ссылки на библиотеку необходимо указать путь к каталогу, в котором она находится, используя -L /path/to/libraries флаг.

Вам также нужны определенные библиотеки, которые вы хотите использовать -l my_library,

Обычно вам также необходимо указать необходимые пути включения, используя -I /path/to/headers


pkg-config может быть использован как помощник для этого, так как он возвращает точные параметры, которые вам нужны для использования библиотеки.

Вы должны использовать это так:

echo `pkg-config opencv --cflags --libs`

соответственно

g++ my_first_opencv_app.cc `pkg-config opencv --cflags --libs`

который в моей системе оценивается как

g++ my_first_opencv_app.cc -I/usr/include/opencv -lml -lcvaux -lhighgui -lcv -lcxcore

Чтобы он работал с eclipse, вам, вероятно, нужно указать путь включения (/usr/local/include/opencv ?), путь к библиотеке (/usr/local/lib ?) и нужные вам библиотеки через какой-то элемент GUI где-то в настройках проекта. Вам, вероятно, не нужно pkgconfig затем.

0

По вопросам рекламы [email protected]