Использование Code :: Blocks (13.12) / g ++ для создания тестового кода с использованием библиотек DVB V5 в Ubuntu 14.04. Библиотека была загружена, собрана и установлена в соответствии с инструкциями в разделе загрузки.
Если бы все это работало, то был сбой диска.
Решили переустановить все с нуля, а не использовать резервную копию, и снова скачали исходный код libdvbv5 и пересобрали его. Казалось, все прошло хорошо.
Заменил тестовый проект Code :: Blocks из резервной копии, очистил и перестроил все это, но при отладке или запуске из командной строки …. теперь он говорит:
«ошибка при загрузке общих библиотек: libdvbv5.so.0: не удается открыть файл общего объекта: нет такого файла или каталога»
Ну, библиотека, кажется, там. ls -l в / usr / local / lib дает
lrwxrwxrwx 1 root root 17 May 14 21:34 libdvbv5.so -> libdvbv5.so.0.0.0
lrwxrwxrwx 1 root root 17 May 14 21:34 libdvbv5.so.0 -> libdvbv5.so.0.0.0
-rwxr-xr-x 1 root root 752569 May 14 21:34 libdvbv5.so.0.0.0
Без этого код не будет построен в любом случае, и это делает. Я должен признать, что я немного сбит с толку, почему он жалуется на libdvbv5.so.0, когда то, что связано, — это libdvbv5.so, и это прямая ссылка на libdvbv5.so.0.0.0
Почесывая голову над этим — что происходит?
Исправлено — глупо — забыл запустить ldconfig для восстановления кеша после установки libdvbv5. Перейдите в libdir, например / usr / local / lib
/usr/local/lib$ sudo ldconfig
Других решений пока нет …