Сегодня я расскажу об оптимизации скорости сборки программы под Windows, при использовании IDE QTCreator, и компилятора MinGW/GCC.

GCC долго собирает программы, если файлы слишком большие и при этом включена оптимизация -O2 и выше. Обычно возникают тормоза, когда в дизайнере много контролов, в результате этого  на основе xml файла uic'ом генерируется *.cpp файл большого размера. Стоит поменять надпись на кнопочке в интерфейсе, как всё это начнет заново пересобираться.

Решением может быть использование утилиты, которая разбивает сгенеренные uic'ом файлы, называется SplitUI. Сам я ей не пользовался и поэтому не знаю, работает ли она сейчас. Предпочитаю вместо неё ставить нулевую оптимизацию, если проектирую интерфейс и требуется частая пересборка. Для этого в файле проекта *.pro, добавьте следующее:

QMAKE_CFLAGS_DEBUG += -O0
QMAKE_CXXFLAGS_DEBUG += -O0
QMAKE_OBJECTIVE_CFLAGS_DEBUG += -O0

Для сравнения программа, которая может собираться 10 минут, собирается за 30 секунд с отключенной оптимизацией.