LINUX.ORG.RU

OpenCV разделяемые библиотеки

 ,


0

1

Пытаюсь собрать/запустить хелловордный пример из openCV. Собрал

$ g++ -o DisplayImage `pkg-config --cflags --libs opencv` DisplayImage.cpp
Попытка запуска приводит к
./DisplayImage: error while loading shared libraries: libopencv_calib3d.so.3.0: cannot open shared object file: No such file or directory
Даже если поместить данный бинарник в /usr/local/lib (где собственно это добро и лежит) результат будет тем же. Библиотеки доступны всем на чтение/исполнение. (libopencv_calib3d.so.3.0 - это симлинк) Если делать в Code::Blocks, указав пути к либам и сами либы (симлинки на симлинки на либы) то уже на этапе сборки получаю следующую гадость
ld||cannot find -lopencv_calib3d.so|
Довольно странное название для файла, который на самом деле называется libopencv_calib3d.so.3.0. Как пофиксить?

★★★

Как пофиксить?

$ export LD_LIBRARY_PATH=$PWD
$ ./DisplayImage

Библиотеки положить в текующую директорию.

Даже если поместить данный бинарник в /usr/local/lib (где собственно это добро и лежит) результат будет тем же.

Попробуй после этого запустить ldconfig от рута.

i-rinat ★★★★★
()
Последнее исправление: i-rinat (всего исправлений: 1)
Ответ на: комментарий от i-rinat

Мда, заработало. Правда пришлось пересобрать opencv. Так, а как это с помощью IDE сделать? Кидать все либы в папку с проектом наверное не самая лучшая идея.

LIKAN ★★★
() автор топика
Ответ на: комментарий от LIKAN

Кидать все либы в папку с проектом наверное не самая лучшая идея.

Да. В мамку кидай.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.