Вопрос или проблема
Каждый раз, когда я пытаюсь запустить VLC, появляется следующая ошибка:
vlc: ошибка поиска символа: /usr/lib/libvlc.so.5: неопределенный символ: vlc_object_hold
Я пытался удалить и переустановить VLC (а также его ненужные зависимости), но это только дало аналогичную ошибку:
/usr/lib/vlc/vlc-cache-gen: ошибка поиска символа: /usr/lib/libvlc.so.5: неопределенный символ: vlc_object_hold
Я пробовал устанавливать VLC только из репозиториев дистрибутива. Я не пытался использовать сторонние репозитории и не пробовал компилировать из источника. У меня есть старая версия (3.0.11-1-x86) в формате AppImage, которая работает нормально, но я хотел бы исправить эту проблему, а не обходить ее. Есть идеи?
Arch GNU/Linux, x86_64. На момент написания самой новой версией в репозиториях был VLC 3.0.16-7.
Ну, это неловко: у меня каким-то образом были устаревшие библиотеки, связанные с VLC, в /usr/local/lib
. Я понятия не имею, как они там оказались, но их удаление решило проблему.
Ответ или решение
Проблема, с которой вы столкнулись при запуске VLC на Arch Linux, связана с конфликтом библиотек, которые находятся в каталоге /usr/local/lib
. Ошибка undefined symbol: vlc_object_hold
указывает на то, что есть несоответствие версий библиотек, необходимых для работы VLC.
Вот пошаговое руководство по устранению данной ошибки:
-
Проверка библиотек в /usr/local/lib:
Выполните следующую команду, чтобы определить, какие версии библиотек VLC могут находиться в/usr/local/lib
:ls /usr/local/lib | grep vlc
Если в выводе вы увидите библиотеки, связанные с VLC, это и есть причина вашей проблемы.
-
Удаление устаревших библиотек:
Если вы обнаружили устаревшие библиотеки в/usr/local/lib
, вам необходимо их удалить. Вы можете сделать это, выполнив команды:sudo rm /usr/local/lib/libvlc.so.* sudo rm /usr/local/lib/libvlccore.so.* sudo rm /usr/local/lib/libvlc.so sudo rm /usr/local/lib/libvlccore.so
Будьте осторожны и убедитесь, что вы удаляете именно те файлы, которые относятся к VLC.
-
Проверка других версий:
Если вы использовали другие источники для установки VLC (например, AppImage или сторонние репозитории), убедитесь, что они не конфликтуют с установленной версией в официальных репозиториях. -
Обновление системы:
После удаления старых библиотек рекомендуется выполнить обновление системы и переустановку VLC для того, чтобы убедиться, что у вас установлены актуальные версии библиотек:sudo pacman -Syu sudo pacman -S vlc
-
Тестирование:
Попробуйте снова запустить VLC:vlc
Если все шаги были выполнены правильно, VLC должен запуститься без ошибок.
-
Дополнительные рекомендации:
Если у вас возникнут подобные проблемы в будущем, старайтесь сохранять систему чистой от устаревших библиотек и следите за тем, какие источники вы используете для установки программного обеспечения.
Если вы будете следовать этим шагам, то сможете устранить проблему с запуском VLC на вашем Arch Linux.