За всеки който може да го интересува - начина е много лесен, не бих казал особено оригинален, въпреки това предоставя възможности.
Примерна структора на проект с плъгини:
Project
+-- build
+-- common
+-- myproject
+-- other
Нека common е библиотека която съдържа важни функции, myproject е основата на проекта (самата програма), other е нещо друго, някоя друга библиотека, а build ще е мястото където ще се запише TARGET-а от всички проекти.
В директория Project (!) се прави нов .pro файл със съдържание:
@
TEMPLATE = subdirs
SUBDIRS = common other myproject
DEPENDPATH += common other
INCLUDEPATH += common other
CONFIG += ordered
CONFIG -= app_bundle
@
(За app_bundle не съм сигурен дали е необходимо да го има, не съм пробвал да го махна, но и не ми пречи, за момента го оставям)
Изпълнява се qmake (qmake-qt-4 в някой случай), за да се създаде Makefile-а. Изпълнява се make и компилатора тръгва да обхожда директориите, като ще започне от common, ще премине през other и ще приключи с myproject.
Ако в .pro файловете на отделните проекти е зададен правилно target и най- вече DESTDIR, след приключването на компилацията, всичко ще се намира в build директорията. В случая за "вътрешните" директории, трябва да се добави:
@
DESTDIR = ../build
@
При стартирането на make ако няма промени, просто ще мине по директориите и ще каже че няма нищо за правене в съответните директории.
С този метод, отделните проекти могат да се компилират отделно - за тестове, като крайния продукт може бързо и лесно да се компилира по абсолютно същия начин както всеки друг проект в Qt. Тъй като .pro файла в Project директорията има информация за всички други проекти, изчистването на moc, core и обектни файлове във всички проекти е бързо и лесно ;-)