30

我正在使用 CDT(用于 c 语言的eclipse)。我发现默认的 gcc 编译器选项是-O0 -g3 -Wall -c -fmessage-length=0. 是什么意思-fmessage-length?那应该是-fflag,但是呢message-length?我没有在GCC Command-Line Options中找到它。感谢您的考虑。

4

2 回答 2

41

我没有在 GCC 命令行选项中找到它。

那是因为您正在查看“ GCC 手册的命令行选项部分的修改版本”。

这是所有可能的 GCC 命令行选项的官方列表,它导致本节:“3.7 控制诊断消息格式的选项”。这是该部分必须说的:

3.7 控制诊断消息格式的选项

传统上,诊断消息的格式与输出设备的外观无关(例如,它的宽度,...)。您可以使用下面描述的选项来控制诊断消息的格式化算法,例如每行有多少字符,应该多久报告一次源位置信息。请注意,某些语言前端可能不支持这些选项。

-f消息长度=n

尝试格式化错误消息,使其适合大约 n 个字符的行。g++ 的默认值为 72 个字符,GCC 支持的其余前端为 0。如果 n 为零,则不进行换行;每条错误消息都出现在一行中。

...

于 2012-08-18T03:40:45.873 回答
9

gcc 的手册页说

-fmessage-length=n
       Try to format error messages so that they fit on lines of about n characters.  The default is 72 characters for g++ and 0 for the rest of the front ends supported by GCC.  If n is
       zero, then no line-wrapping will be done; each error message will appear on a single line.

只是错误消息的格式选项。

于 2012-08-18T03:41:18.877 回答