2011-09-06 26 views
0

我們有一個問題,我們確信它已經解決了。我們在大學的研究團隊正在使用Visual Studio 2010開發一個軟件。我們開發的軟件基於不同的開源工具,它們在各自不同的計算機上都有自己的路徑。如何在作爲一個團隊工作時同步視覺工作室項目?

開源軟件包是用CMake編譯的。我們單獨設法安裝並開始開發我們的軟件。但問題是,由於路徑設置的不同,我們單獨編寫的代碼不適用於彼此的計算機。我們如何爲我們的代碼提供一個通用功能?我們是否也應該使用CMake?我們正在使用存儲庫,hg mercurial。我們是否應該避免將項目文件提交到存儲庫並僅提交標題或源文件?我們是否應該對源代碼進行修改,然後每次修改時都會由CMake進行配置?

謝謝。

+1

我不確定,但不能CMake創建VS項目文件?那麼最好只提交CMakeLists.txt文件並不時創建一個項目文件。 – arne

+0

是的,但在每一個新的步驟中從頭開始構建起來似乎有點麻煩,對吧? –

+1

好的,那麼您實際上多久添加一些圖書館和/或文件到您的項目?這應該是你需要一個新的項目文件的唯一時間。 – arne

回答

2

您應該使用CMake生成Visual Studio項目文件。僅提交源代碼,頭文件和CMakeLists.txt。

使用獨立的構建路徑。例如,如果你的項目結構是這樣

Project\Src 
Project\Doc 
Project\...... 

創建一個build文件夾類似

Project\build 

,並生成VS-解決方案和項目文件到該文件夾​​。 CMake會(希望:))找到所有庫,併爲VS設置正確的包含和庫路徑。只有在將新源文件添加到項目中時纔會生成VS項目文件。 CMake會自動檢測並提示您是否要重新生成項目文件。

這就是我們的工作方式,我們做得很好。 :)

+0

謝謝fdlm。我們也想到了這種類似的方法,但想看看是否有人真的使用它。 –

1

您應該在所有計算機上設置所有庫路徑,因此無論放置庫的位置如何,只要它們位於某處並且可以被編譯器找到,它就會工作。在您的項目設置(Alt+F7),而不是絕對路徑:

+0

它不僅僅是庫,還包括依賴關係等。而在Visual Studio中,這些依賴於項目文件。如果更改項目文件,則會修改整個依賴項。 –

1

你應該使用相對路徑(..\..\Include..\..\Libs EG)(例如:C:\IncludeD:\Libs等)

你們之間還同意爲一個共同的文件夾結構項目文件。