Hudsonの使い方⑱ HudsonでC言語を静的解析

C言語プロジェクトでも静的解析してみます。


バグになりそうなコードを検出してくれる
splintを使って静的解析してみます。

Slave端末にsplintをインストールします。

Ubuntuでは以下のコマンドでインストールします。

sudo apt-get install splint

プロジェクトの設定でシェルの実行にsplintコマンドを追加(赤枠の部分)

-I /usr/local/include

でCUnitのヘッダファイルの在処を指定します。


splintでwarningが1件でもあるとビルドが失敗してしまうので、
苦肉の策でsplintをバックグラウンドで実行してwaitしています(;´Д`)

Warnings Pluginをインストールします。

ジョブの設定でコンパイラの警告の集計をチェック

splintの出力結果ファイルを指定します。

ジョブを実行します。

splintの警告があれば表示されます。(赤枠の部分です)


詳細も表示されます。


ソースファイルのパスに日本語が含まれていると実行はできますが、
ファイルパスが化けて詳細表示でエラーになります。これは仕方ないかヽ(`Д´)ノ

■2010/05/22 追記

コメントを頂いたので再チャレンジ!


id:akihiroxさんの助言から調査してみたら、
splintの出力結果が文字化けしてる事がわかりました。
しかし、splintのエンコーディング指定方法がわからず・・・(;´Д`)


ひとまず、文字化けしているジョブ名を文字化けしないジョブ名に変更して再実行。
※【SampleJob】C言語Linux環境で実行)→ CUnitOnLinux に変更


詳細が表示されるようになりました^^ 


根本的な解決にはなってませんが、ひとまず解決(?)かな。
id:akihiroxさん、ありがとうございます^^