Вопрос или проблема
Я пытаюсь установить libqt4-dev
на Ubuntu 20.04, но получаю следующие ошибки:
kjs@PC:~/Downloads$ sudo apt-get install -y libqt4-dev
Чтение списков пакетов... Готово
Построение древовидной зависимости... 50%
Построение древовидной зависимости
Чтение информации о состоянии... Готово
Вам может понадобиться выполнить 'apt --fix-broken install', чтобы исправить это.
Следующие пакеты имеют неудовлетворённые зависимости:
libqt4-dev : Зависит от: libqt4-dbus (= 5:4.8.7+dfsg-7ubuntu4rock7), но он не будет установлен
Зависит от: libqt4-declarative (= 5:4.8.7+dfsg-7ubuntu4rock7), но он не будет установлен
Зависит от: libqt4-designer (= 5:4.8.7+dfsg-7ubuntu4rock7), но он не будет установлен
Зависит от: libqt4-dev-bin (= 5:4.8.7+dfsg-7ubuntu4rock7)
Зависит от: libqt4-help (= 5:4.8.7+dfsg-7ubuntu4rock7), но он не будет установлен
Зависит от: libqt4-network (= 5:4.8.7+dfsg-7ubuntu4rock7), но он не будет установлен
Зависит от: libqt4-qt3support (= 5:4.8.7+dfsg-7ubuntu4rock7), но он не будет установлен
Зависит от: libqt4-script (= 5:4.8.7+dfsg-7ubuntu4rock7), но он не будет установлен
Зависит от: libqt4-scripttools (= 5:4.8.7+dfsg-7ubuntu4rock7), но он не будет установлен
Зависит от: libqt4-sql (= 5:4.8.7+dfsg-7ubuntu4rock7), но он не будет установлен
Зависит от: libqt4-svg (= 5:4.8.7+dfsg-7ubuntu4rock7), но он не будет установлен
Зависит от: libqt4-test (= 5:4.8.7+dfsg-7ubuntu4rock7), но он не будет установлен
Зависит от: libqt4-xml (= 5:4.8.7+dfsg-7ubuntu4rock7), но он не будет установлен
Зависит от: libqt4-xmlpatterns (= 5:4.8.7+dfsg-7ubuntu4rock7), но он не будет установлен
Зависит от: libqtcore4 (= 5:4.8.7+dfsg-7ubuntu4rock7), но он не будет установлен
Зависит от: libqtgui4 (= 5:4.8.7+dfsg-7ubuntu4rock7), но он не будет установлен
Зависит от: qt4-linguist-tools (= 5:4.8.7+dfsg-7ubuntu4rock7)
Зависит от: qt4-qmake (= 5:4.8.7+dfsg-7ubuntu4rock7)
Зависит от: qtchooser (>= 55-gc9562a1-1~)
Рекомендует: libqt4-opengl-dev (= 5:4.8.7+dfsg-7ubuntu4rock7), но он не будет установлен
libqtgui4:i386 : Зависит от: libpng12-0:i386 (>= 1.2.13-4), но он не будет установлен
Рекомендует: qt-at-spi:i386, но он не будет установлен
E: Неудовлетворённые зависимости. Попробуйте 'apt --fix-broken install' без пакетов (или укажите решение).
После этого я попробовал:
sudo add-apt-repository ppa:rock-core/qt4
sudo apt-get update
sudo apt-get install libqtcore4
и получил следующую ошибку:
~$ sudo apt-get install libqtcore4
Чтение списков пакетов... Готово
Построение древовидной зависимости
Чтение информации о состоянии... Готово
Вам может понадобиться выполнить 'apt --fix-broken install', чтобы исправить это.
Следующие пакеты имеют неудовлетворённые зависимости:
libqtcore4 : Ломает: libqtcore4:i386 (!= 5:4.8.7+dfsg-7ubuntu4rock7), но 4:4.8.7+dfsg-5ubuntu2 будет установлен
libqtcore4:i386 : Ломает: libqtcore4 (!= 4:4.8.7+dfsg-5ubuntu2), но 5:4.8.7+dfsg-7ubuntu4rock7 будет установлен
libqtgui4:i386 : Зависит от: libpng12-0:i386 (>= 1.2.13-4), но он не будет установлен
Рекомендует: qt-at-spi:i386, но он не будет установлен
E: Неудовлетворённые зависимости. Попробуйте 'apt --fix-broken install' без пакетов (или укажите решение).
Я также попытался установить Qt5 с помощью следующей команды:
sudo apt-get install git g++ python libeigen3-dev zlib1g-dev libqt5opengl5-dev libqt5svg5-dev libgl1-mesa-dev libfftw3-dev libtiff5-dev libpng-dev
и получил следующую ошибку:
Чтение списков пакетов... Готово
Построение древовидной зависимости
Чтение информации о состоянии... Готово
g++ уже является самой новой версией (4:9.3.0-1ubuntu2).
g++ установлен вручную.
libpng-dev уже является самой новой версией (1.6.37-2).
git уже является самой новой версией (1:2.25.1-1ubuntu3.10).
libgl1-mesa-dev уже является самой новой версией (21.2.6-0ubuntu0.1~20.04.2).
libgl1-mesa-dev установлен вручную.
zlib1g-dev уже является самой новой версией (1:1.2.11.dfsg-2ubuntu1.5).
Вам может понадобиться выполнить 'apt --fix-broken install', чтобы исправить это.
Следующие пакеты имеют неудовлетворённые зависимости:
libfftw3-dev : Зависит от: libfftw3-bin (= 3.3.8-2ubuntu1)
Зависит от: libfftw3-double3 (= 3.3.8-2ubuntu1), но он не будет установлен
Зависит от: libfftw3-long3 (= 3.3.8-2ubuntu1), но он не будет установлен
Зависит от: libfftw3-quad3 (= 3.3.8-2ubuntu1), но он не будет установлен
libqt5opengl5-dev : Зависит от: libqt5opengl5 (= 5.12.8+dfsg-0ubuntu2.1), но он не будет установлен
Зависит от: qtbase5-dev (= 5.12.8+dfsg-0ubuntu2.1)
libqt5svg5-dev : Зависит от: libqt5svg5 (= 5.12.8-0ubuntu1), но он не будет установлен
libqtgui4:i386 : Зависит от: libpng12-0:i386 (>= 1.2.13-4), но он не будет установлен
Рекомендует: qt-at-spi:i386, но он не будет установлен
python : Предварительные зависимости: python-minimal (= 2.7.11-1), но он не будет установлен
Зависит от: python2.7 (>= 2.7.11-1~), но он не будет установлен
Зависит от: libpython-stdlib (= 2.7.11-1), но он не будет установлен
E: Неудовлетворённые зависимости. Попробуйте 'apt --fix-broken install' без пакетов (или укажите решение).
Ubuntu 20.04 исключил qt4
и все зависимости libqt4-*
из своих официальных репозиториев. Добавление этого PPA-репозитория в вашу систему может решить вашу проблему.
sudo add-apt-repository ppa:rock-core/qt4
sudo apt-get update
Затем установите qt4
.
sudo apt-get install libqtcore4
Ответ или решение
Чтобы установить libqt4-dev
на Ubuntu 20.04, необходимо следовать определенным шагам, поскольку в данной версии системы официальные репозитории больше не содержат qt4
и его зависимостей. Для этого мы воспользуемся PPA-репозиторием, который содержит необходимые пакеты.
Шаг 1: Добавление PPA-репозитория
Сначала добавим репозиторий, который может предоставить необходимые пакеты. Откройте терминал и выполните следующую команду:
sudo add-apt-repository ppa:rock-core/qt4
Это позволит вашему системе получать доступ к пакетам Qt4.
Шаг 2: Обновление списков пакетов
После добавления репозитория необходимо обновить списки пакетов, чтобы ваш менеджер пакетов знал о новых доступных версиях. Выполните:
sudo apt-get update
Шаг 3: Установка libqt4-dev и зависимостей
Теперь можно приступать к установке libqt4-dev
и его зависимостей. Для этого выполните следующую команду:
sudo apt-get install libqt4-dev
Если вы получите ошибки о неразрешенных зависимостях, выполните указание, которое было перечислено в сообщении, для исправления проблем с зависимостями:
sudo apt --fix-broken install
Это должно устранить большинство проблем с несовместимыми пакетами и установить необходимые зависимости.
Шаг 4: Установка пакетов Qt4
Если вам понадобятся другие пакеты Qt4, такие как libqtcore4
, вы можете продолжить установку:
sudo apt-get install libqtcore4
Шаг 5: Проверка установки
После завершения установки можно проверить, установлены ли необходимые пакеты, запустив:
dpkg -l | grep libqt4
Это покажет список всех установленных пакетов, связанных с Qt4.
Устранение возможных ошибок
Если вы столкнулись с проблемами при установке, например:
- Пакеты не устанавливаются из-за конфликтов: вам может понадобиться удалить проблемные пакеты. Вы можете сделать это следующим образом:
sudo apt-get remove <package-name>
- Если установочный процесс все еще не может завершиться, попробуйте перезагрузить систему и повторить установку.
Заключение
Теперь вы знаете, как установить libqt4-dev
совместно с зависимостями на Ubuntu 20.04. Несмотря на то, что Qt4 больше не поддерживается, вы можете использовать это руководство, чтобы восстановить его в своей системе. Не забывайте, что для разработки новых проектов рекомендуется использовать более современные версии Qt, такие как Qt5 или Qt6, если это возможно.
Если у вас остались вопросы или возникли дополнительные трудности, не стесняйтесь оставлять комментарии для дальнейших разъяснений!