Подробный гайд: установка и настройка Qt5 в ALT Linux

Установка Qt5 в ALT Linux: вместо qt5-default ставим libqt5-devel. Пошаговая настройка qmake/CMake, сборка проекта, проверка модулей и решение типовых ошибок.

2026.04.21                  


Подробный гайд: установка и настройка Qt5 в ALT LinuxПодробный гайд: установка и настройка Qt5 в ALT Linux

Важное уточнение про qt5-default

Пакет qt5-default существует только в экосистеме Debian/Ubuntu. Он был создан как временный костыль для переключения между Qt4 и Qt5 и официально удалён из репозиториев ещё в 2021 году.

В ALT Linux (и вообще в RPM-дистрибутивах) такого пакета нет. Разработка под Qt5 строится на стандартных пакетах заголовочных файлов, утилитах сборки и pkg-config. Ниже приведён актуальный и проверенный способ настройки Qt5-окружения в ALT Linux.


1. Подготовка системы

ALT Linux использует apt-rpm (команды аналогичны Debian, но работают с RPM-пакетами).

Убедитесь, что система обновлена:

sudo apt-get update
sudo apt-get upgrade

2. Установка Qt5 для разработки

Основной метапакет для разработки под Qt5 в ALT Linux:

sudo apt-get install libqt5-devel

Этот пакет автоматически подтянет:

  • Заголовочные файлы (/usr/include/qt5/)
  • Утилиты сборки: qmake-qt5, moc-qt5, uic-qt5, rcc-qt5
  • Базовые модули: Qt5Core, Qt5Gui, Qt5Widgets, Qt5Network и др.

Дополнительные пакеты (по необходимости)

Задача Пакет
Полноценная IDE qtcreator
Отладка GUI qt5-qttools, linguist-qt5
SQL-модули libqt5sql-devel (выберите нужный драйвер: libqt5sql-mysql-devel, libqt5sql-psql-devel и т.д.)
Мультимедиа libqt5multimedia-devel
WebEngine libqt5webengine-devel

Поиск доступных модулей:

apt-cache search libqt5 | grep devel

3. Проверка установки

# Версия qmake
qmake-qt5 --version

# Проверка видимости модулей через pkg-config
pkg-config --modversion Qt5Core
pkg-config --cflags Qt5Widgets

# Наличие заголовков
ls /usr/include/qt5/QtCore | head

Если команды отработали без ошибок → окружение готово.


4. Сборка тестового проекта

Вариант A: через qmake (классический способ)

1. Создайте директорию и файлы:

mkdir qt5-test && cd qt5-test
nano main.cpp

main.cpp:

#include <QApplication>
#include <QPushButton>
#include <QLabel>

int main(int argc, char *argv[]) {
    QApplication app(argc, argv);
    QLabel label("Hello from Qt5 on ALT Linux!");
    label.resize(300, 100);
    label.show();
    return app.exec();
}

2. Создайте .pro-файл:

nano test.pro
QT       += core widgets
TARGET   = test
SOURCES  = main.cpp

3. Соберите:

qmake-qt5
make
./test

Вариант B: через CMake (современный стандарт)

1. Установите CMake, если нет:

sudo apt-get install cmake gcc-c++ pkg-config

2. CMakeLists.txt:

cmake_minimum_required(VERSION 3.10)
project(Qt5Test LANGUAGES CXX)

set(CMAKE_CXX_STANDARD 17)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)

find_package(Qt5 REQUIRED COMPONENTS Core Widgets)

add_executable(test main.cpp)
target_link_libraries(test Qt5::Core Qt5::Widgets)

3. Сборка:

cmake -B build -S .
cmake --build build
./build/test

5. Нюансы ALT Linux

Особенность Решение
Имя утилиты qmake В ALT она называется qmake-qt5. Символическая ссылка qmake может указывать на Qt6 или отсутствовать.
Переменные окружения Обычно не нужны. pkg-config и cmake находят Qt5 автоматически.
Ветка дистрибутива В p10/p11/Sisyphus имена пакетов идентичны. Версии Qt5 различаются: в p10 ~5.15, в Sisyphus может быть новее.
Графическая подсистема Для работы GUI убедитесь, что запущен X11/Wayland-сервер и установлены шрифты: fonts-ttf-dejavu, fonts-liberation.

Альтернативы и рекомендации

  • Qt6 уже в ALT Linux: если проект не привязан к Qt5, рассмотрите libqt6-devel. API почти идентичен, но производительность и поддержка современных стандартов выше.
  • Qt Creator: sudo apt-get install qtcreator даст полноценную IDE с автодополнением, отладчиком и интеграцией с qmake/CMake.
  • Изоляция зависимостей: для сложных проектов используйте conan или vcpkg, либо собирайте Qt из исходников в /opt/qt5/ с configure -prefix /opt/qt5.

Типичные ошибки и решения

Ошибка Причина Решение
qmake-qt5: command not found Не установлен libqt5-devel или qt5-qtbase-devel sudo apt-get install libqt5-devel
Project ERROR: Unknown module(s) in QT: webengine Модуль не установлен sudo apt-get install libqt5webengine-devel
pkg-config: Qt5Core not found Отсутствует pkgconfig или dev-пакет sudo apt-get install pkg-config libqt5-devel
Ошибка линковки -lQt5Core Не переданы флаги в ручную сборку Используйте qmake-qt5 или cmake, либо добавьте $(pkg-config --cflags --libs Qt5Core Qt5Widgets)