bash - 如何将 CMake 输出保存到文件?

标签 bash cmake stdout io-redirection stderr

我通常可以通过 >> output_file.txt 保存 bash 命令的输出

但是当我执行 cmake 时,输出仍然发送到屏幕而不是预期的输出文件:

cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D \
BUILD_NEW_PYTHON_SUPPORT=ON -D INSTALL_C_EXAMPLES=ON -D \
INSTALL_PYTHON_EXAMPLES=ON  -D BUILD_EXAMPLES=ON .. >> output_file.txt

最佳答案

这是因为您的 cmake 输出的一部分(可能全部,视情况而定)流式传输到 stderr。

使用它来将 stderr 重定向到 stdout:

cmake ... >> output_file.txt 2>&1

或仅将 stderr 附加到 output_file.txt:

cmake ... 2>> output_file.txt

关于bash - 如何将 CMake 输出保存到文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29275078/

相关文章:

c++ - 使用多个库时,在 CMakeList 中配置 target_link_libraries 的正确方法是什么?获取无法指定链接库错误

c++ - 使用 '\b' 字符的意外控制台行为

node.js - 将 process.stdout 设置为每个 Node.js 核心集群工作线程的文件

c++ - CMake:带有单元测试的项目结构

c++ - 在大型项目中以现代 CMake 方式添加 header

java - 从 java 到 python 的一个标准输出到一个标准输入

python - 从 python 执行一个 .sh 文件,指示绝对路径

bash - 如何将剪贴板内容分配给 .sh 脚本文件中的变量?

bash - 是否可以同时运行两个循环?

linux - 为什么在编写 linux 服务时出现 Exec 格式错误?