Как установить libqt4-dev в Ubuntu 20.02

Вопрос или проблема

Я пытаюсь установить 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, если это возможно.

Если у вас остались вопросы или возникли дополнительные трудности, не стесняйтесь оставлять комментарии для дальнейших разъяснений!

Оцените материал
Добавить комментарий

Капча загружается...