Во многих случаях предпочтительней распространять приложение в виде автономного исполнимого файла, т.е. не тащить с собой билиотеки QtCore4.dll, QtGui4.dll и др. Данные рекомендации приведены для платформы Windows и компилятора MinGW/GCC, но их легко можно адаптировать для другой платформы и/или компилятора. Для избавления от лишних зависимостей потребуется пересобрать среду Qt со статической линковкой1. Перейдем в каталог Qt и выполним:
configure.exe -static -release другие_ключи
Например:
configure.exe -static -debug-and-release -qt-zlib -qt-gif -qt-libpng -qt-libmng -qt-libtiff -qt-libjpeg -no-sse2
Если вы компилировали Qt ранее, то перед configure необходимо выполнить:
make confclean
Можно переходить к компиляции:
make
Если компиляция завершилась неудачно с сообщением об отсутствующем файле cc1.exe — добавте в переменную окружения PATH путь к этому файлу. Он находится:
каталогMinGW\libexec\gcc\mingw32\версия_компилятора
Теперь можно пересобрать ваши приложения. Зависимостей от динамических библиотек Qt нет. Однако размер исполнимых файлов может вас неприятно удивить. Также осталась зависимость от библиотеки mingwm10.dll. Она служит для потокобезопасного перехвата исключений. Если вы не пользуетесь исключениями C++, то можете удалить из файла Makefile ключ -mthreads , либо на этапе configure указать ключ -no-exceptions. Использование данного ключа уменьшит размер .exe файла на 15-20%. Для уменьшения размера исполняемых файлов может быть использован упаковщик исполняемых файлов UPX2





