Вступление:
В данном уроке я расскажу в картинках как собрать приложение статически/провести статическую линковку/ отучить ваш *.exe от библиотек Qt — кажется это всё одно и тоже по своей сути
Лично я всё проделывай со свеженькой на данный момент Qt SDK с сайта Nokia( Qt 4.8 и SDK 1.2.1)
Сам я полный нуб в Windows, так как всё жизнь сижу на Linux, так что всё сопровождается картинками, для таких же нубов в винде, как я сам
Шаг 1.
Насколько я сам разобрался для нормальной сборки нам в системе понадобится Perl
Я его брал отсюда
Я выбрал версию ActiveState и понятия не имею чем она отличается от Strawberry, но с ним всё работало
Затем, насколько я понял, в винде творится жуткий беспорядок с тем, где хранятся либы и нужно вписывать вручную какие-то переменные, короче галочка на скрине должна от всего этого маразма избавить, так что советую её оставить
Ура, у нас есть Perl!
Шаг 2.
Теперь можно приступать к сборке Qt из исходников.
Первым делом я предлагаю скачать исходники
я взял эти , возможно и посвежей подойдут, но я рисковать не стал
теперь нужно распаковать это дело в X:QtSDKQtSources4.7.4
папок QtSources4.7.4 у вас не будет, их нужно создать
теперь нам нужно открыть вашим любимым блокнотом файлик
X:QtSDKQtSources4.7.4mkspecswin32-g++qmake.conf
найти строку, содержащую текст: QMAKE_LFLAGS
и привести её к такому вот виду:
QMAKE_LFLAGS = -static -static-libgcc -enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-reloc
и сохранить файл.
Теперь нам нужно открыть пропатченный терминал(да простят меня виндузятники, если эта штука не так называется), который можно найти у себя, взглянув на мой скриншот
Теперь в этом терминале нам нужно перейти в каталог
X:QtSDKQtSources4.7.4
и забить команду
configure -static -debug-and-release -no-exceptions -openssl-linked -nomake demos -nomake examples
затем вам предстоит прочесть всё, что вам предложат прочесть и правильно ответить на вопросы
дождавшись выполнения команды(конца конфигурирования) и появления приглашения строки ввода, забиваем теперь команду(собираем библиотеку)
mingw32-make sub-src
после окончания терминал можно закрыть и проделать следующее
после того, как нажмёте «Собрать всё» может вывалится вот такая вот с первого взгляда непонятная штука, её я предлагаю просто закрыть и забыть о ней
Всё почти готово, осталось открыть свой проект и сделать несколько кликов, как на скринах
Всем спасибо за внимание, надеюсь у вас всё получилось.
Надеюсь данный урок послужит макетом для более тонкой сборки и настройки вашего окружения Qt.
Автор: Zeka13