2011-11-29 38 views
1

在Visual Studio 2010中,如何設置我的VC++導入目錄,以便可以從多臺計算機構建項目?例如,我的項目需要使用安裝在我正在使用的兩臺機器上但位於不同路徑上的圖形庫。當從多臺計算機上工作時,在VC++中包含目錄

我想答案是某種宏,但我是新來的Visual Studio,所以我不知道我的直覺是否正確。

我正在從Matlab環境轉換,您可以在其中直接設置每臺機器的路徑,而不是每個項目。 Visual Studio是否具有此類功能,或者是項目屬性級別的所有功能?

+0

'SUBST X:C:\路徑\上\本地\ machine'? – MSalters

回答

2

確實可以使用宏來設置您的include和lib目錄在每臺計算機的基礎上。

,如果你在你的項目目錄中的文件,您可以使用:

$(SolutionDir)\這將指向您的解決方案根目錄

$(ProjectDir)\的完整路徑,這將指向你的項目目錄的完整路徑根。

您可以將圖形庫在你的項目目錄,並指向它喜歡:

$(ProjectDir)\graphicslib,例如,或者您希望把它放在你的解決方案的任何其他地方。

更多信息位於此處http://msdn.microsoft.com/en-us/library/c02as0cs.aspx

1

使用屬性表的層次結構,或使用像CMake這樣的工具爲您生成項目文件(因爲它應該自動查找所有庫/包含)。

對於屬性表:爲每個項目添加相同的屬性表。使用該屬性表,包含具有預定義名稱的其他屬性表。然後在你工作的每臺電腦上,你將不得不提供那些「每臺機器」屬性表。例如:

main.vsprops  -> include by every project 
|- matlab.vsprops -> sets the lib/includes for matlab runtime 
|- opengl.vsprops -> sets the lib/include for opengl 

現在,在您的版本系統,給您提供了包含適合dfeault值和一個批處理文件來創建它們matlab.vsprops和opengl.vsprops默認。通過這種方式,您可以從VCS結帳,運行單個文件,編輯vsprops並開始編碼,而不會有太多麻煩。例如:

main.vsprops  -> versioned 
matlab.vsprops.def -> versioned, contains defaults 
opengl.vsprops.def -> versioned, contains defaults 
create_vsprops.bat -> versioned, copies *.vsprops.def to *.vsprops 
相關問題