There is a feature I really like in qt creator and it is the Shadow build. When the Shadow Build is on, all the generated files (*.moc, Makefile, *.o) will be generated in a given source directory, so the sources directory is kept clean. I am moving from qt creator to kdevelop and I am trying to figure out how this feature works, so far I can create the resulting binary, the moc files and object files to the extra directory using the variables DESTDIR
, OBJECTS_DIR
and MOC_DIR
but I cannot create the makefile in this diretory. Any ideas?
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
AFAIK what QtCreator does, basically boils down to this:
mkdir my_shadow_build
cd my_shadow_build
qmake ../my_src_dir
this creates the Makefile itself in the build directory and simply running
make
there creates all temporary files under the build directory, using the sources from the original directory. This does not require any special stuff in the .pro file but just depends on the usage "from the outside".
回答2:
You can also try the experimental QMake support plugin for KDevelop: https://projects.kde.org/kdev-qmake
It asks you for a build folder on first start and does the shadow-build stuff. Note that you need to make sure your .pro and .pri files are written properly - it's quite easy to mess it up. CMake is much simpler in that regard!