4

現在、Make on Linuxを使ってビルドするC++プロジェクトがあります。 CruiseControlのJavaプロジェクトと同様に自動化したいと思います。"CruiseControl" C++プロジェクトのオートメーション?

1)プロジェクトは、C++プロジェクトのためのCruiseControlのために同様のありますか?

OR

2)は、C++プロジェクトのためのCruiseControlのを使用しての "ハウツー" は良いはありますか?

+0

同様の質問:http://stackoverflow.com/questions/870469/is-there-a-tool-for-cross-platform-continuous-integration-c-win32-and-linux – pugmarx

答えて

6

私は、Linux上でCruiseControl for C++プロジェクトを設定することを検討していましたが、Hudsonに遭遇しました。 1つのファイル/ 1つのコマンドラインがセットアップされており、起動しています。管理アクセスは素敵なWebインターフェイスを介して行われます。私は非常にそれをお勧めします。

ハドソンはセットアップと管理が簡単で、プラグインを使って静的/エラー/警告を作成することができます(ディレクトリをドロップすると利用可能です)。ビルドが失敗したときに自動的にメールを送信するように設定できます。

私は、各プロジェクトのディレクトリを作る起動するシェルスクリプトを作成しました。私はハドソンがそのスクリプトを実行するように指摘した。ビルドはcronのような設定を介してセットアップされます - ウェブインターフェースを介してセットアップします。 30分ごとにコードの変更やperforceからのビルドや再コンパイルをチェックしています。

お試しください。起床して走るには数分しかかかりません。現在のビルド設定で可能なことを見たいと思っていたので、私はそれをダウンロードしました。私は一度も振り返ってみませんでした。

3

私たちはTeamCityを使用しているので、CruiseControlについてはわかりませんが、CruiseControlはコマンドラインビルドを実行できます。つまり、Makeを呼び出すだけです。それには何も問題ありません。 TeamCityでは、進捗通知をmakeファイルに追加することも簡単です(特定の形式で出力されるだけです)ので、 "ネイティブ"プロジェクトと大きく異なる感じはありません。私はクルーズコントロールがこの点でどの程度遠くに行くのか分かりません。

私たちはコマンドラインで実行されるCMakeで構築された大きなC++プロジェクトを持っており、単体テスト結果(Boost :: Testで)も正しくレポートします。

ああ、CruiseControlがJava以外のコマンドラインランナーやプロジェクトタイプをサポートしていない場合は、TeamCityを見てください。

1

私たちはHudsonを実行して、C++とJavaコードの混合を作成しています。これは非常にうまく動作します。 CruiseControlの利点の1つは、Hudsonが完全なWebインターフェイスを備えているため、XMLファイルを手動で編集する必要がないことです。

0

cruisecontrolを使用して、C++プロジェクトとJavaプロジェクトの両方をビルドしています。私たちのC++プロジェクトはmakeの代わりにSConsを使用しています。そして、単にexec Antタスクを通してcruisecontrol Antスクリプトからsconsを呼び出します。

0

私たちは、C++プロジェクトのためのCruiseControlのを使用します。 Antスクリプトでdevenv.comを実行して、execを使用してソリューションを構築します。

関連する問題