qt creator 中有一个我非常喜欢的功能,那就是 Shadow 构建。当 Shadow Build 开启时,所有生成的文件(*.moc、Makefile、*.o)都将在给定的源目录中生成,因此源目录保持干净。我正在从 qt creator 转移到 kdevelop,我试图弄清楚这个功能是如何工作的,到目前为止,我可以使用 variables 将生成的二进制文件、moc 文件和目标文件创建到额外的目录中,DESTDIR
但是我无法创建 makefile在这个目录中。有任何想法吗?OBJECTS_DIR
MOC_DIR
问问题
9721 次
2 回答
28
AFAIK QtCreator 所做的,基本上可以归结为:
mkdir my_shadow_build
cd my_shadow_build
qmake ../my_src_dir
这会在构建目录中创建 Makefile 本身并简单地运行
make
那里使用原始目录中的源在构建目录下创建所有临时文件。这不需要 .pro 文件中的任何特殊内容,而仅取决于“从外部”的用法。
于 2011-03-06T17:49:35.627 回答
1
您还可以尝试 KDevelop 的实验性 QMake 支持插件:https ://projects.kde.org/kdev-qmake
它在第一次启动时要求您提供一个构建文件夹并执行影子构建工作。请注意,您需要确保正确编写 .pro 和 .pri 文件 - 很容易搞砸。CMake 在这方面要简单得多!
于 2011-04-08T14:10:27.220 回答