1

コンパイル プロセス中に、多くのエラーが画面にスローされます。それらの解決を開始するには、3、4 ページ上にスクロールする必要があります。私はそれらに正面から取り組んでみましたが、それでも端末に来ました。

g++ -std=c++0x testCoverDownloader.cpp -I /usr/include/QtCore/ -I /usr/include/QtGui 2>&1 | head

最初に上位のエラーを表示してから、ページを下にスクロールするにはどうすればよいですか? 上記のコードは、出力を切り取って上位 10 行を表示します。私が欲しいのはすべてのエラーですが、最初から上にスクロールする必要はありません

4

3 に答える 3

2

2>&1 を使用して STDERR の結果を STDOUT に取得するだけでなく、後で表示するために結果をファイルに取得するために tee を試してください。

于 2012-06-15T06:41:17.693 に答える
1

vim を使用している場合は、<your compile statement> 2>&1 | vim -パイプSTDERRを使用STDOUTして vim に表示する必要があります。

編集:@joachim pilbergより正確な回答を提供するために、のコメントに追加されました:

重要な部分はリダイレクト部分です。コンパイラからのエラーは stderr に置かれます。それを head にパイプするには、多かれ少なかれビューアーや vim のようなエディターでさえ、stderr を stdout にリダイレクトする必要があります。これは、&2>1 (より正確には 2>&1) で行われることです。リダイレクトの詳細については、シェルのマニュアル ページを参照してください。

于 2012-06-15T06:37:21.063 に答える
1

-Wfatal-errors コンパイラ オプションを追加して、最初のエラーの後にコンパイルを停止することもできます

于 2012-06-15T08:28:46.967 に答える