Вот несколько решений, которые вы можете попробовать:
LDCONFIG
Как отметил AbiusX: если вы только что установили библиотеку, вам может понадобиться запустить ldconfig .
sudo ldconfig
ldconfig создает необходимые ссылки и кеш для самых последних
общие библиотеки найдены в каталогах, указанных в команде
в файле /etc/ld.so.conf и в доверенных каталогах
(/ lib и /usr/lib).
Обычно менеджер пакетов позаботится об этом при установке новой библиотеки, но не всегда, и запуск ldconfig не помешает, даже если это не ваша проблема.
Пакет разработчика или неправильная версия
Если это не сработает, я также проверю предложение Пола и поищу версию библиотеки "-dev". Многие библиотеки разделены на пакеты dev и non-dev. Вы можете использовать эту команду для поиска:
apt-cache search <libraryname>
Это также может помочь, если у вас просто установлена неверная версия библиотеки. Некоторые библиотеки публикуются в разных версиях одновременно, например, Python.
Местоположение библиотеки
Если вы уверены, что установлен правильный пакет, а ldconfig его не нашел, он может просто находиться в нестандартном каталоге. По умолчанию ldconfig ищет в /lib
, /usr/lib
, а каталоги - в /etc/ld.so.conf
и $LD_LIBRARY_PATH
. Если ваша библиотека находится где-то еще, вы можете добавить каталог в отдельной строке в /etc/ld.so.conf
, добавить путь к библиотеке в $LD_LIBRARY_PATH
или переместить библиотеку в /usr/lib
. Затем запустите ldconfig
.
Чтобы узнать, где находится библиотека, попробуйте следующее:
sudo find / -iname *libraryname*.so*
(замените libraryname
названием вашей библиотеки)
Если вы пойдете по маршруту $LD_LIBRARY_PATH
, вы захотите поместить его в файл ~/.bashrc
, чтобы он запускался при каждом входе в систему:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/path/to/library