У меня Ubuntu 18.04.
При запуске виртуальной коробки я получаю сообщение об ошибке
$ virtualbox
VirtualBox: supR3HardenedMainGetTrustedMain: dlopen("/usr/lib/virtualbox/VirtualBox.so",) failed: libQt5Core.so.5: cannot open shared object file: No such file or directory
$ ldd /usr/lib/virtualbox/VirtualBox.so | grep Qt
libQt5X11Extras.so.5 => /usr/lib/x86_64-linux-gnu/libQt5X11Extras.so.5 (0x00007f7dcec8e000)
libQt5Core.so.5 => not found
libQt5Gui.so.5 => not found
libQt5Widgets.so.5 => not found
libQt5PrintSupport.so.5 => /usr/lib/x86_64-linux-gnu/libQt5PrintSupport.so.5 (0x00007f7dcea1f000)
libQt5OpenGL.so.5 => /usr/lib/x86_64-linux-gnu/libQt5OpenGL.so.5 (0x00007f7dce7c8000)
libQt5Gui.so.5 => not found
libQt5Core.so.5 => not found
libQt5Widgets.so.5 => not found
libQt5Gui.so.5 => not found
libQt5Core.so.5 => not found
libQt5Widgets.so.5 => not found
libQt5Gui.so.5 => not found
libQt5Core.so.5 => not found
$ apt-file search libQt5Gui.so.5
libqt5gui5: /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5
libqt5gui5: /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5.9
libqt5gui5: /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5.9.5
В системе есть пакеты libqt5 *, но я не могу перечислить некоторые из них, используя
$ ls /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5
ls: cannot access '/usr/lib/x86_64-linux-gnu/libQt5Gui.so.5': No such file or directory
Как я могу это исправить?
Для весь "не найденные" библиотеки, определите их пакет, поскольку Вы сделали с поиском способного файла libQt5Gui.so.5. Затем установите пакеты с sudo Кв. - получают установку, например:
sudo apt-get install libqt5gui5
Установка пакетов должна поместить библиотеки в надлежащее местоположение, таким образом, они будут найдены.
Если файлы не присутствуют, ни один, который они были установлены в неправильном месте (вручную вызванный где-нибудь), они - неправильная архитектура (i386 вместо amd64, так был бы в/usr/lib/i386-linux-gnu), или установка не работала правильно (проверьте состояние пакетов с командой:
dpkg -l | grep libqt5
Правильно установленные пакеты будут иметь состояние "ii".
Вы могли использовать определять местоположение команду для нахождения файла (файлов), если они находятся где-то в другом месте в системе, но если Вы установили их, та возможность маловероятна.
Попытка переустанавливает все libqt5 пакеты. Это помогло мне в подобном случае:
sudo apt install --reinstall libqt5widgets5 libqt5gui5 libqt5dbus5 libqt5network5 libqt5core5a
После переустановки ldd $(which qbittorrent)
отображенный вся библиотека .so файлы в их местах.
Для меня, libqt5gui5
пакет был уже установлен. Я попытался переустановить как в другом ответе, но все еще получил ошибку:
...
ImportError: libQt5Core.so.5: cannot open shared object file: No such file or directory
Я нашел подобную проблему в https://github.com/dnschneid/crouton/wiki/Fix-error-while-loading-shared-libraries:-libQt5Core.so.5
Ядро должно быть по крайней мере 3,15 для очень реального, но (мне) тайная причина: "Qt 5.10 использует renameat2 системный вызов, который только доступен начиная с ядра 3.15". Если Вы хотите считать очень длинный поток, посмотрите здесь:
https://bbs.archlinux.org/viewtopic.php? id=232682
...
sudo strip --remove-section=.note.ABI-tag /usr/lib64/libQt5Core.so.5
Вышеупомянутая команда "разделяет" часть кода, который смотрит в ядре для чего-то не там и позволяет модулю загружаться.
Я на самом деле выполняю Debian, тестирующий (мишень) 3.12-1-amd64. Путь к моей библиотеке /usr/lib/x86_64-linux-gnu/libQt5DBus.so.5
таким образом, команда в моем случае
strip --remove-section=.note.ABI-tag /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
После этого я смог получить приложение (Электрум) работа
Installed для устранения этой проблемы.
Вы можете запустить sudo apt --fix-broken install
, чтобы исправить эти ошибки:
The following packages have unmet dependencies:
virtualbox-6.1 : Depends: libqt5opengl5 (>= 5.0.2) but it is not going to be installed
Depends: libqt5x11extras5 (>= 5.6.0) but it is not going to be installed
Depends: libsdl1.2debian (>= 1.2.11) but it is not going to be installed
Recommends: libsdl-ttf2.0-0 but it is not going to be installed