2011-08-15 50 views
1

我正在嘗試在Qt創建器中創建一個項目,其中表示層和業務邏輯層被分離爲子項目。下面是我說的一個例證:使用QtCreator和QMake進行項目組織

 
MainProject.pro 
| 
---- BusinessLogic.pro 
|  | 
|  ---- source/header files 
| 
---- PresentationLayer.pro 
     | 
     ---- source/header files 

目前,我在表示層的代碼是指在業務邏輯項目的頭文件由.pro文件中指定INCLUDEPATH = ../BusinessLogic/headers。它似乎工作,但有沒有更好的方式來做到這一點?也許甚至是推薦的方式?

我試圖做一些類似的lib文件,但由於這些是在編譯時生成的,他們可以在發佈版或調試文件夾中,我不知道我該如何去做這件事。

這似乎是一種組織項目的非常常見的方式,但我似乎找不到有關如何使用QtCreator或QMake完成此任務的許多信息。

回答

2

考慮不同的調試/釋放庫的包容,你可以在項目文件中的以下內容:

build_pass:CONFIG(debug, debug|release) { 
    LIBS += -L../BusinessLogic/bin/debug -lBusinessLogicd 
} 
else:build_pass { 
    LIBS += -L../BusinessLogic/bin/release -lBusinessLogic 
} 

這是假設你有你的BusinessLogic /斌/ debug文件夾一個BusinessLogicd.lib和BusinessLogic .lib放入BusinessLogic/bin/release文件夾中。

關於includepath,只要你在同一個主項目中,我認爲相對路徑是正常的。

+0

這看起來很有希望。我回家時會去看看它。看到這不是一個更常見的問題,這只是令人驚訝的。 – CadentOrange