Ошибка при создании примеров OpenCV на Ubuntu

Я использовал этот учебник для создания OpenCV на Ubuntu. Все идет хорошо, пока я не попытаюсь построить примеры. когда я делаю это:

ш build_all.sh

у многих возникает одна и та же ошибка:

компиляция tree_engine.cpp

/usr/bin/ld: предупреждение: libavutil.so.49, необходимый для /usr/local/lib/libopencv_highgui.so, не найден (попробуйте использовать -rpath или -rpath-link)

для каждого примера возникает одна и та же ошибка. Код компилируется, но попытка запустить скомпилированный код завершится ошибкой:

./tree_engine: ошибка при загрузке общих библиотек: libavutil.so.49: невозможно открыть общий объектный файл: нет такого файла или каталога

Я понятия не имею, что это за libavutil.

Я использую убунту 10.10


person Yasser Souri    schedule 13.05.2011    source источник
comment
Итак, благодаря SIFE я знаю, что проблема была в разных версиях libavutil!   -  person Yasser Souri    schedule 13.05.2011


Ответы (1)


Возможно, у вас есть другое имя, поэтому попробуйте следующее:

ls -l /usr/local/lib/libavutil.so*

В моем случае:

lrwxr-xr-x  1 root  wheel     20 Jan 17 00:30 /usr/local/lib/libavutil.so -> libavutil.so.50.15.1
lrwxr-xr-x  1 root  wheel     20 Jan 17 00:30 /usr/local/lib/libavutil.so.1 -> libavutil.so.50.15.1
-rwxr-xr-x  1 root  wheel  54352 Jan 17 00:30 /usr/local/lib/libavutil.so.50.15.1

В качестве root введите это:

ln -s /usr/local/lib/libavutil.so.50.15.1 /usr/local/lib/libavutil.so.49

Если у вас нет этой библиотеки, вы можете установить ее через менеджер пакетов:

apt-get install libavutil49
person SIFE    schedule 13.05.2011
comment
У меня установлен libavutil50 (я установил его с помощью Synaptic). но когда я пытаюсь выполнить команду ls -l /usr/local/lib/libavutil.so*, я ничего не получаю - person Yasser Souri; 13.05.2011
comment
Попробуйте ls -l /usr/lib/libavutil.so*. - person SIFE; 13.05.2011
comment
У меня такая же ошибка при использовании OpenCV с Python 2.6. Когда я попытался связать libavutil.so.50 с libavutil.so.49, я получаю эту ошибку от Python: import cv; ImportError: /usr/lib/libavutil.so.49: версия `LIBAVUTIL_49' не найдена (требуется /home/ely/OpenCV-2.2.0/lib/libopencv_highgui.so.2.2) Есть идеи? ТАКЖЕ: предложение apt-get для libavutil49 не работает. apt-get говорит, что packaged устарел, по крайней мере, с Ubuntu 11.04. - person ely; 17.06.2011
comment
FYI: понял это. Необходимо перейти на сайт packages.ubuntu.com для Lucid, вручную загрузить пакет libavutil49 и установить с помощью dpkg. Потом все возвращается на круги своя. - person ely; 17.06.2011