2

我正在 Visual Studio 中开发我的项目,并且正在使用 qmake 创建解决方案文件。我试图通过引入包含类似项目的子文件夹来组织解决方案。但是,qmake 生成的解决方案文件的文件夹层次结构只有一层。

有没有办法配置qmake为Visual Studio生成文件夹层次结构,类似于解决方案资源管理器中“添加→新建解决方案文件夹”的效果?

编辑:澄清一下,假设我有这个目录结构:

MainDir
   +--- GroupDir1
   |       +--- ProjectDir1
   |       +--- ProjectDir2
   +--- GroupDir2
           +--- ProjectDir3

我希望在 Visual Studio 中看到的解决方案中的文件夹层次结构能够反映这一点,但这是我设法使用 qmake 生成的解决方案:

Solution
   +--- ProjectDir1
   +--- ProjectDir2
   +--- ProjectDir3
4

3 回答 3

7

您可能正在寻找的是在您的专业文件中添加以下内容

CONFIG -= flat

查看有关此选项的 Qt 文档

例如,您还可以查看使用此选项的这个 pro 文件

于 2012-05-31T12:48:53.837 回答
0

尝试

TEMPLATE = subdirs
CONFIG  += ordered

SUBDIRS +=  project1\
        project2\
            ...
        projectn

subdirs模板用于在子目录中构建目标。您可以使用变量SUBDIRS添加子目录。

一般来说,添加 是一个好主意CONFIG += ordered,以防项目之间存在依赖关系(如库)。

您还可以使用.pri文件(相当于项目文件的标题)在子项目之间共享变量。

编辑:试试这个

创建maindir.pro

TEMPLATE = subdirs
CONFIG  += ordered

SUBDIRS +=  GroupDir1\
        GroupDir2\

然后groupdir1.pro

TEMPLATE = subdirs
CONFIG  += ordered

SUBDIRS +=  ProjectDir1\
        ProjectDir2\

然后groupdir2.pro

TEMPLATE = subdirs
CONFIG  += ordered

SUBDIRS +=  ProjectDir3

这保证可以与 Qt Creator 一起使用,不能用视觉工作室测试它......

于 2012-05-28T11:23:33.727 回答
0

是的,您可以在 .pro/pri 中有一个层次结构,但它会在 Visual Studio 中“转换”为单级结构。但是由于 pro/pri 是 qmake 实际使用的,它并不是真正的单级/平面(您的源文件不会被移动)。

希望这是有道理的!

于 2012-05-29T19:22:19.167 回答