Qt qmake и .pro файлы

Примечание: qmake это файл qmake.exe . Расположен он сразу в нескольких директориях и это важно. Дело в том , что в каждом бинарнике qmake.exe прошиты определенные переменные для сборки проектов.

По умолчанию создаются максимум варианты Release/Debug для MinGw и msvc2010 (всего 4шт.)

фотка 1

Мы можем добавить в режиме Manual два недостающих qmake.exe из каталога D:\QtSDK1.2.1\QtSources\4.8.1\... в проект. Это Qt Versions (версии Qt , хотя это мало , что проясняет)

фотка 2

Далее у вас появятся еще 2 строчки , которые относятся к qmake.exe из каталога D:\QtSDK1.2.1\QtSources\4.8.1\...

фотка 3

И самое интересное, что после этих манипуляций , придется выйти из Qt Creator, удалить файл ***.pro.user в каталоге проекта и пересоздать заново варианты debug/release для разных QT версий. Почему ? - похоже это глюк Qt....

Что такое qmake? К сожалению понять , что такое qmake и зачем он нужен можно по логике только поняв , что такое makefile и make .

А последнее возможно только после после получения сокраментального удовольствия программирования из командной строки, с ручным вызовом компилятора (GCC или cl.exe), компоновщика ,...

makefile и make служат одной великой цели : для больших проектов важно не компилировать заново каждый раз все проекты, делать это при наличии только изменений в этих проектах.

К слову использование makefile можно встретить везде, а точнее ее Не-использование встретить практически невозможно. Потому что это халява. Это тот самый GNU tools , который устанавливает правила игры в мире, ибо он бесплатный (то есть для людей).

Во всех практически средах разработки от контроллеров до сборки драйверов для ОС Windows и самой Windows кстати используется технология makefile, потому что это часть свободного ПО GNU, создатели которого делают компиляторы для все архитектур процессоров. И компоновщики тоже , то есть полный набор инструментов для разработчиков всего мира.

Так вот что такое qmake? Это программа от разработчиков фреймворка Qt, предназначенная для создания makefile-ов для каждого из проектов в Qt по информации из файлов .pro для каждого из проектов. Файл . pro это придумка Qt разработчиков, это идея не GNU.

GNU на бытовом языке это когда ты можешь купить среду разработки под какой-то из контроллеров или процессоров за 10000$ , а можешь включить мозги и сделать тоже самое и даже лучше бесплатно на GNU плюс бесплатный эклипс например.

Небольшая шпаргалка по pro файлу. Основные моменты.

qt подключает нужные модули network, console, ...

CONFIG это поинтереснее, тут набираются переменные для создания условий.