GCCコンパイラが出力するエラーと警告を個別に処理する方法はありますか?プログラムがコンパイルされている場合、
はどのように私はすべてのエラーは、「warnings.txt」に行き、「error.txt」
と警告のすべてに行くことになるだろう
私がそこにあると仮定これは簡単な解決策ですが、詳細を教えてください:GCCコンパイラの出力を判断する[警告する場合] [エラーの場合はこれを行う]
私はGCCでコンパイルするためにGNU makefileを書いており、makefileの規則はbashで実行されています。
私はこの分岐決定が私のmakefileのルールで行われることを望みます。例えば、このような
ので、多分何か:
if (PROGRAM_HAS_NO_ERRORS_OR_WARNINGS); then\
echo "Everything went well";\
else\
if (PROGRAM_HAS_WARNINGS); then\
echo "HERE ARE THE WARNINGS: " $(PROGRAM_WARNINGS);\
fi;\
if (PROGRAM_HAS_ERRORS); then\
echo "HERE ARE THE ERRORS: " $(PROGRAM_ERRORS);\
fi;\
fi;
私は..警告が.. COUTたとエラーがCERRたという印象の下
をして、そのCOUTは1に対応し、CERRは2
に対応しました私はこのような何かを実行すると しかし、:
$(COMPILE) 1>warnings.txt 2>errors.txt
すべてがだから私はdefinit
をERRORS.TXTに行きますそれをファイルに送信して、より簡単な方法があればそれを解析したくありません。
重要ではないかもしれないいくつかの他の注意事項:
if ($(COMPILE)); then\
/\警告がある場合でも、 が、私はフラグを提供しない限り、それは「...真と評価されます-Werror "これは単に警告を出力し、gccはプログラムのコンパイルを拒否します
'./script.sh> log_file 2> err_file'これはあなたのためには機能しませんか? –
'cout'と' cerr'は、標準出力(stdout)と標準エラー(stderr)に書き込むiostreamオブジェクトにC++によって与えられた名前です。 –
エラーと警告の両方がstderrに送られます。あなたは、sedと言ってそれらをフィルタリングしたいですか? – Beta