如何将gcc编译器的输出重定向到文件?

avd*_*avd 14 gcc

重定向运算符不起作用.那我们该怎么做呢?还有一个问题,在makefile中,我们如何从命令行给出参数,比如

run: a.out
    ./a.out **<input>**
Run Code Online (Sandbox Code Playgroud)

Mar*_*wis 18

gcc将其错误消息打印到stderr,因此您必须重定向stderr:

gcc -o foo foo.c 2> foo.gccmessages
Run Code Online (Sandbox Code Playgroud)

您始终以相同的方式在命令行上提供参数

./a.out argument1 argument2 argument3
Run Code Online (Sandbox Code Playgroud)

  • 你使用`2 >>`运算符. (5认同)
  • 您可以通过提出一个单独的问题并获得答案来做到这一点。 (2认同)

小智 6

尝试: $ make 2>&1 | tee your_build_log.txt 这将重定向 stdout,2>&1 将 stderr 重定向到与 stdout 相同的位置,同时允许您同时查看终端中的输出。

请参阅:如何将编译器的所有输出捕获到文件中?