В данном HOWTO мы подробно рассмотрим как собирать статически слинкованные приложения (не требующие библиотек Qt для запуска и работы), написанные на Qt, для Windows прямо из GNU/Linux при помощи компилятора MinGW.
Введение
Для быстрой конфигурации сборки и настройки проектов мы будем использовать свободную IDE Qt Creator, поэтому установим её:
sudo yum -y install qt-creator
Установка компонентов
Для сборки нам потребуется Qt и его заголовочные файлы:
sudo yum -y install qt-devel
MinGW32:
sudo yum -y install mingw32
Qt для MinGW32 и его статически слинкованная версия под платформу Win32:
sudo yum -y install mingw32-qt-*
В случае необходимости, установите и WebKit:
sudo yum -y install mingw32-webkitgtk-static
Настройка среды
1. Запустите Qt Creator, откройте настройки среды через меню Tools — Options и переключите его интерфейс на английский язык.
2. Перейдите на страницу Build & Run, на вкладку Qt Versions.
3. Нажмите кнопку Add… и укажите путь к установленному Qt Static. Обычно путь следующий:
/usr/i686-w64-mingw32/bin/qmake-qt4
4. Заполните поле Version name, указав там текущую версию Qt с постфиксом Static. Нажмите Apply.
5. В том же окне настроек перейдите на вкладку Compilers. Нажмите кнопку Add -> MinGW и укажите название (в поле Name рекомендуем указать MinGW32) и путь к компилятору MinGW в Compiler path. В большинстве случаев он будет следующим:
/usr/bin/i686-w64-mingw32-g++
Не забудьте нажать Apply после завершения ввода пути.
6. Перейдите на вкладку Kits, нажмите кнопку Add и укажите следующие параметры:
- Name — MinGW32;
- Compiler — MinGW32;
- Debugger — System GDB;
- Qt version — ваше название с постфиксом Static.
Не забудьте нажать Apply и теперь OK для закрытия формы и применения созданных конфигураций.
7. Откройте свой проект в Qt Creator, выберите на левой панели пункт Projects. Нажмите кнопку Add Kit и выберите созданный нами MinGW32.
8. Переключитесь на конфигурацию MinGW32, затем в меню Edit build configuration выберите Release. Теперь около Build Steps нажмите кнопку Details и в поле Additional arguments впишите следующее:
CONFIG+=static CONFIG+=staticlib
Сборка проекта
В меню Build IDE Qt Creator выберите пункт Build project. Если вы всё настроили верно, сборка завершится без ошибок и вы получите статически слинкованный exe файл для ОС Microsoft Windows.
в каких репах искать mingw32-qt-* ?
В Fedora присутствует в стандартных (fedora и fedora-updates).
что делать с этим?
@Антон
Вы пытаетесь собрать посредством средств Qt5 приложение на Qt4.