Ручная настройка теневой сборки в qmake - PullRequest
15 голосов
/ 02 марта 2011

В qt creator мне действительно нравится одна особенность, это сборка Shadow. Когда Shadow Build включен, все сгенерированные файлы (* .moc, Makefile, * .o) будут сгенерированы в заданном исходном каталоге, поэтому исходный каталог остается чистым. Я перехожу из qt creator в kdevelop и пытаюсь выяснить, как работает эта функция, поэтому я могу создать результирующий двоичный файл, файлы moc и объектные файлы в дополнительный каталог, используя переменные DESTDIR, OBJECTS_DIR и MOC_DIR но я не могу создать make-файл в этой директории. Есть идеи?

Ответы [ 2 ]

23 голосов
/ 06 марта 2011

AFAIK, что делает QtCreator, сводится к следующему:

 mkdir my_shadow_build
 cd my_shadow_build
 qmake ../my_src_dir

это создает сам Makefile в каталоге сборки и просто запускает

 make

там создает все временные файлы в каталоге сборки, используя источники из исходного каталога. Это не требует каких-либо специальных действий в файле .pro, а зависит только от использования «извне».

1 голос
/ 08 апреля 2011

Вы также можете попробовать экспериментальный плагин поддержки QMake для KDevelop: https://projects.kde.org/kdev-qmake

Он запрашивает у вас папку сборки при первом запуске и выполняет сборку теней.Обратите внимание, что вам нужно убедиться, что ваши файлы .pro и .pri записаны правильно - это очень легко испортить.CMake намного проще в этом отношении!

...