2012-05-13 75 views
2

我在Visual Studio中開發我的項目,並使用qmake創建解決方案文件。我試圖通過引入子文件夾來包含類似項目來組織解決方案。但是,由qmake生成的解決方案文件只有一個級別的文件夾層次結構。qmake可以支持Visual Studio解決方案的文件夾層次結構嗎?

有什麼辦法可以配置qmake爲Visual Studio生成文件夾層次結構,類似於解決方案資源管理器中的「添加→新解決方案文件夾」的效果?

編輯:澄清一下,假設我有這樣的目錄結構:

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

我想爲看到在Visual Studio在溶液文件夾層次結構,以反映這一點,但是這是解決方案我使用管理qmake的生成:

Solution 
    +--- ProjectDir1 
    +--- ProjectDir2 
    +--- ProjectDir3 
+0

你可以發佈你的qmake層次結構(只有相關的部分)? – UmNyobe

回答

0

嘗試

TEMPLATE = subdirs 
CONFIG += ordered 

SUBDIRS += project1\ 
     project2\ 
      ... 
     projectn 

subdirs模板用於構建子目錄中的目標。您可以使用變量SUBDIRS添加子目錄。

在一般情況下,如果您在項目之間存在依賴關係(如庫),則最好添加CONFIG += ordered

您還可以使用.pri文件(相當於項目文件的標題)在子項目之間共享變量。

編輯:試試這個

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的工作,不能與視覺工作室測試...

+0

感謝您的迴應,但這正是我現在正在做的事情,它仍然給我我想要避免的1級層次結構。每個'.pro'文件已經使用'subdirs'模板。 –

0

是你可以有一個層次在你的.pro/PRI,但它被「轉化」成單級視覺工作室的結構。但是由於pro/pri是qmake實際使用的,它並不是真正的單一/級別平坦(你的源文件不會被移動)。

希望這是有道理的!

+0

在VS項目的結構中,它們是一個層次,但物理位置並非我所說的「轉換」。它看起來像圖騰是與配置 - =平面選項的錢:) – paulm

相關問題