mt valgrindコマンドでエコーが機能しないのはなぜですか?

mt valgrindコマンドでエコーが機能しないのはなぜですか?

したがって、私のmakefileはvalgrind.outファイルを生成しないことを除いてうまくいきますが、その理由はわかりません。したがって、コンソールは実行可能ファイルが作成された行を正常に印刷しますが、valgrind.outは印刷しません。

ここに画像の説明を入力してください。

答え1

宛先を指定する必要があります。

make valgrind

それはそれの一部ではないからですall

その他の注意事項

Makefileでは、おそらくディレクトリを指定する必要があり./lineますlineウォールグリーンターゲット。

指摘したとおり@kathy一貫性のために$(EXEC)

また、後者が許可される可能性が高いため、次のもの>&に置き換える必要があります。>file 2>&1どんな殻、(おそらくsh)、あなたが活用してください。

だから、次のようになります。

valgrind:
    valgrind --leak-check=yes ./$(EXEC) >valgrind.out 2>&1
    @echo 'valgrind.out has been created'

関連情報