Qt CONFIG - = flat选项给出奇怪的MSVC项目过滤器

时间:2013-10-10 22:10:23

标签: c++ visual-studio-2010 qt qmake flat

我的C ++项目目录结构如下所示:

root
  root.pro
  include
    dir1
      header1.h
    dir2
      header2.h
  src
    src.pro
    dir1
      source1.cpp
    dir2
      source2.cpp

我正在尝试使用CONFIG - = flat选项生成msvc项目以保留文件组织。这适用于源文件(事实上,与.pro或任何更深层目录相同的目录中的每个文件)。

但对于我的“include”目录,生成的过滤器相当奇怪/愚蠢!

MSVC_project
  Header Files
    ..
      include
        dir1
          header1.h
        dir2
          header2.h
  Source Files
    src1
      source1.cpp
    src2
      source2.cpp

看起来qmake正在尝试重新创建相对于.pro目录的目录结构。

使用相对或绝对文件名提供HEADERS和SOURCES qmake变量不会改变任何内容。

我的src.pro文件,没有什么花哨的:

NAME = proj_name
TEMPLATE = lib
CONFIG -= flat
QT += core gui opengl
ROOTDIR = ..
#ROOTDIR = $$system(cygpath -aw ../..)

HEADERS_PATH = $$ROOTDIR/include

INCLUDEPATH += $$HEADERS_PATH
HEADERS += $$system(find $$HEADERS_PATH -name "*.h")
SOURCES += $$system(find . -name "*.cpp")
...

我知道如何告诉qmake生成适当的过滤器吗?

0 个答案:

没有答案