2016-10-24 12 views
1

サプレッションファイルに記載されているにもかかわらず、valgrindがメモリリークを検出したときにゼロ以外のリターンコードを返すようです。Valgrindのサプレッションとリターンコード

エラーは表示されませんが、戻りコードは134です。これはジェンキンズのすべてのビルドに失敗します...これには方法がありますか、何か間違っていますか?あなたは非常におそらく何か間違ったことをやっている

答えて

1

(または多分Valgrindののバグの古いバージョンを使用して、以下のちょうど3.12リリースである):

valgrind --leak-check=full --errors-for-leak-kinds=all --error-exitcode=33 
    --suppressions=t.supp ./memcheck/tests/trivialleak 
... 
==22750==   suppressed: 1,000 bytes in 1,000 blocks 
... 
echo $? 
0 

しばらく抑制ファイルなし:

valgrind --leak-check=full --errors-for-leak-kinds=all --error-exitcode=33 
    ./memcheck/tests/trivialleak 
... 
==22760== 1,000 bytes in 1,000 blocks are definitely lost in loss record 1 of 1 
... 
echo $? 
33 
+0

これは、表示環境変数が設定されていないためにプログラムが異常終了することが原因である可能性があります。これは私の推測です。 134-128 = 6 = SIGABRT – Saruman