В данном 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

Настройка среды

Настройки Qt Creator

Настройки Qt Creator

Запустите Qt Creator, откройте настройки среды через меню ToolsOptions и переключите его интерфейс на английский язык.

Настройки Qt Creator - страница Build & Run

Настройки Qt Creator - страница Build & Run

Перейдите на страницу Build & Run, на вкладку Qt Versions.

Диалог поиска qmake

Диалог поиска qmake

Нажмите кнопку Add… и укажите путь к установленному Qt Static. Обычно путь следующий:

/usr/i686-w64-mingw32/bin/qmake-qt4
Qt Creator - Build & Run - результат добавления

Qt Creator - Build & Run - результат добавления

Заполните поле Version name, указав там текущую версию Qt с постфиксом Static. Нажмите Apply.

Настройки компиляторов в Qt Creator

Настройки компиляторов в Qt Creator

В том же окне настроек перейдите на вкладку Compilers. Нажмите кнопку Add -> MinGW и укажите название (в поле Name рекомендуем указать MinGW32) и путь к компилятору MinGW в Compiler path. В большинстве случаев он будет следующим:

/usr/bin/i686-w64-mingw32-g++

Не забудьте нажать Apply после завершения ввода пути.

Настройка среды сборки Qt Creator

Настройка среды сборки Qt Creator

Перейдите на вкладку Kits, нажмите кнопку Add и укажите следующие параметры:

  • NameMinGW32;
  • CompilerMinGW32;
  • DebuggerSystem GDB;
  • Qt version – ваше название с постфиксом Static.

Не забудьте нажать Apply и теперь OK для закрытия формы и применения созданных конфигураций.

Свойства открытого проекта в Qt Creator

Свойства открытого проекта в Qt Creator

Откройте свой проект в Qt Creator, выберите на левой панели пункт Projects. Нажмите кнопку Add Kit и выберите созданный нами MinGW32.

Настройка конфигураций сборки проекта в Qt Creator

Настройка конфигураций сборки проекта в Qt Creator

Переключитесь на конфигурацию MinGW32, затем в меню Edit build configuration выберите Release. Теперь около Build Steps нажмите кнопку Details и в поле Additional arguments впишите следующее:

CONFIG+=static CONFIG+=staticlib

Сборка проекта

В меню Build IDE Qt Creator выберите пункт Build project. Если вы всё настроили верно, сборка завершится без ошибок и вы получите статически слинкованный exe файл для ОС Microsoft Windows.