2009-12-31 89 views
8

(我是新來的CMake和我不是那麼熟悉的Visual Studio)。組織一個CMake的項目,以便源可以在Visual C++

輕鬆瀏覽我需要實現一個比較大的圖書館解決方案/項目文件將由CMake生成,而我的問題是我想在VC GUI中組織文件以反映磁盤上的目錄結構。

基本上,圖書館分爲不同的部分。例如,其中一個被稱爲「普通」,並將實現庫使用的一些標題。在磁盤上,它將位於特定的「公共」目錄中,該目錄可能有一個或多個子目錄。

src/ 
    common/ 
    ... 
    portfolio/ 
    ... 
    asset/ 
    contracts/ 
    physical_assets/ 
    ... 
    mathutils/ 
    ... 

我想有請參見Visual Studio的解決方案資源管理器中, 內同樣的事情,但我只知道如何分割的溶液進入不同的項目。 我該怎麼做?

回答

8

你可以使用SOURCE_GROUP,CMake FAQ covers that

+0

它工作!非常感謝你! – fulmicoton 2009-12-31 12:00:26

0

不確定這是否是你想要的,但是:首先確保你有「工具 - >選項 - >項目和解決方案 - >解決方案資源管理器模式」設置爲「顯示所有文件」。然後,如果你在根源目錄中創建一個VS項目(可能與你的CMakeLists.txt所在的目錄相同),VS將顯示該目錄中的所有文件及其所有子目錄。

+0

我找不到這些選項。我的版本是VC 7.1。) 此外,我可以看到所有文件,但它們全都出現在解決方案資源管理器中的相同目錄中。這不會發生在您的Visual C++版本中嗎? – fulmicoton 2009-12-31 10:27:51

+1

啊我正在使用VS2008 ..我看到整個目錄結構都是在磁盤上。 – stijn 2009-12-31 10:45:06

1

我不認爲你可以。如果你使用「顯示所有文件」,你會得到你想要的,但只在項目級別。在根目錄下創建一個VS項目可能會讓你查看所有的文件,但是你仍然需要爲每個exe/dll /等單獨的項目。你想建立。請記住,VS中的解決方案是一組項目,而不是目錄樹。

+0

感謝您的回答。我可以在解決方案資源管理器中手動創建Visual C++中的子目錄(右鍵單擊添加 - >新目錄),所以我認爲這不是不可能的,但只能由CMake處理。 – fulmicoton 2009-12-31 10:40:14

+0

問題是,下次運行CMake時,解決方案將被覆蓋,因此,對VS中的解決方案所做的任何更改都將丟失。 – JesperE 2009-12-31 11:00:23

相關問題