linux - 如何将编译器的所有输出捕获到文件中?

标签 linux shell g++ makefile io-redirection

我正在 Linux 中从源代码 (CPP) 构建一个开源项目。这是顺序:

$CFLAGS="-g Wall" CXXFLAGS="-g Wall" ../trunk/configure --prefix=/somepath/ --host=i386-pc --target=i386-pc
$make

在编译时,我收到很多编译器警告。我想开始修复它们。我的问题是如何捕获文件中的所有编译器输出?

$make > file 没有做这项工作。它只是保存编译器命令,如 g++ -someoptions/asdf/xyz.cpp 我想要这些命令执行的输出。

最佳答案

编译器警告发生在 stderr 上,而不是 stdout 上,这就是为什么当您将 make 重定向到其他地方时看不到它们的原因.相反,如果您使用的是 Bash,请尝试以下操作:

$ make &> results.txt

& 的意思是“将标准输出和标准错误重定向到这个位置”。其他 shell 通常具有类似的构造。

关于linux - 如何将编译器的所有输出捕获到文件中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2297536/

相关文章:

linux - 判断socket上是否还有Data残留并丢弃

Bash 相当于 Tcsh 的 ESC-p 以跳转到以您目前输入的内容开头的命令

linux - 记录曾经使用过的每个 linux 命令行?

c++ - 类模板特化的问题

c++ - g++ 标志只检查语法?

c - 锁定帧缓冲设备

c - 我在哪里可以找到有关在 C/linux 中为 USB 设备创建驱动程序的更多信息?

linux - 社区字符串的 DLink 交换机 OID

python - 如何在mongodb shell中设置mongoengine的ReferenceField值?

c++ - UTF-8 字符的预处理器粘贴在 g++ 中执行 'not give a valid preprocessing token'