2009-05-19 60 views
4

我們有一個C++項目,目前在Linux上使用Make來構建。我想將它自動化,類似於CruiseControl下的Java Project。「CruiseControl」C++項目自動化?

1)是否有類似CruiseControl for C++項目的項目?

OR

2)是否有一個良好的 「如何做」 關於使用CruiseControl的用於C++項目?

+0

一個類似的問題:http://stackoverflow.com/questions/870469/is-there-a-tool-for-cross-platform-continuous-integration-c-win32-and-linux – pugmarx 2009-05-19 15:21:04

回答

6

我一直在爲Linux上的C++項目設置CruiseControl,但遇到了Hudson。它有一個文件/一個命令行設置,你已經開始運行。管理訪問是通過漂亮的網頁界面。我強烈推薦它。

Hudson與CC相比似乎更容易設置和管理,並且您可以通過插件構建靜態,錯誤/警告(放在目錄中並且它們可用),您可以將它設置爲在構建失敗時自動發送電子郵件。

我已經創建了爲每個項目目錄調用make的shell腳本。我指出哈德森運行該腳本。構建通過cron設置來設置 - 通過web界面進行設置。 我讓它每30分鐘檢查一次代碼更改並從perforce獲取內部版本並重新編譯。

如果你不確定試試看。只需要幾分鐘即可完成並運行。我已經下載了它,因爲我想看看我們目前的構建設置有什麼可能,我從未回頭過,它已經運行了近一年,沒有任何問題。

3

我不知道CruiseControl,因爲我們使用的是TeamCity,但CruiseControl應該能夠執行命令行構建,即只需調用Make。這沒什麼錯。在TeamCity中,向make文件添加進度通知(僅以特定格式輸出)甚至很容易,因此與「本地」項目沒有太大區別。我不知道CruiseControl在這方面有多遠。

我們有一個很大的C++項目,使用CMake構建,運行在命令行上,甚至可以正確報告單元測試結果(使用Boost :: Test)。

哦,如果CruiseControl不支持命令行運行程序或Java以外的項目類型,則應該看看TeamCity作爲替換。

1

我們正在運行Hudson來構建C++和Java代碼的混合,並且它工作得非常好。與CruiseControl相比,一個優勢是Hudson擁有完整的Web界面,因此您不必手動編輯任何XML文件。

0

我們使用cruisecontrol來構建我們的C++和Java項目。我們的C++項目使用SCons而不是make,我們只需通過exec Ant任務從cruisecontrol Ant腳本調用scons。

0

我們使用CruiseControl進行C++項目。我們只需使用exec在Ant腳本中執行devenv.com即可構建解決方案。