引号中的内容隐藏在 gcc 的编译错误消息中?

引号中的内容隐藏在 gcc 的编译错误消息中?

在此输入图像描述

两者都会发生这种情况克++海湾合作委员会每当我尝试gcc file_name并且发生上述情况时。

答案1

您的终端配色方案与 GCC 的默认颜色冲突。也就是说,黑底黑字是不可见的。这在手动的:

颜色由环境变量定义GCC_COLORS。它的值是以冒号分隔的功能列表和选择图形呈现 (SGR) 子字符串。 SGR 命令由终端或终端仿真器解释。 (有关允许的值及其作为字符属性的含义,请参阅文本终端文档中的部分。)这些子字符串值是十进制表示的整数,可以用分号连接。要连接的常见值包括1用于粗体、4用于下划线、5用于闪烁、 7用于反色、39用于默认前景色、30用于37前景色、90用于9716 色模式前景色、 38;5;0用于38;5;25588 色和 256 色模式前景色、49用于默认背景颜色,40to47表示背景颜色,100to107表示 16 色模式背景颜色, 48;5;0to48;5;255表示 88 色和 256 色模式背景颜色。

默认的 GCC_COLORS 是 error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01 粗体01;31红色、01;35粗体洋红色、01;36粗体青色、01;32粗体绿色和01粗体。设置GCC_COLORS为空字符串会禁用颜色。支持的功能如下。

您将能够修改环境变量GCC_COLORS以更改quote为不同的颜色,例如01;34.有关 ANSI 转义码的维基百科页面有更多信息。

答案2

您的 $GCC_COLORS 可能设置为浅色背景而不是深色背景。

检查-fno-diagnostics-colors您的 Makefile 或您使用的任何构建系统。请记住,构建脚本可能会设置该变量。

您也可以尝试在没有倒车影像的情况下运行,看看是否有效。

GCC 手册有关于 GCC_COLORS 环境变量的文档。

相关内容