为什么 GCC 中的调试标志缩写为“g”?

为什么 GCC 中的调试标志缩写为“g”?

在 GCC 中,调试标志是“-g”。我一直无法找到为什么选择“g”。有人知道吗?

答案1

gcc没有发明那个。它只是从其他编译器复制了它。

我怀疑这可以追溯到阿姆斯特丹编译器工具包,它已经有了-g,但至少据我所知,调用它的原因g从未公开宣布过。

我的意思是,那是 20 世纪 80 年代初期,CPU 速度很慢,RAM 稀疏,而且打字通常不是一种乐趣(记住,我们不是在谈论具有任意图形屏幕和无需任何开销即可滚动窗口的能力的计算机)如果东西变得比几十根柱子更宽。因此,按照惯例,基本上所有标志都是单字符。

如果你只有英文字母可供选择,你很快就会做出类似“这个字母未使用,好吧,使用那个”之类的事情。

我认为这没有太多道理。


(据我所知,POSIX pre-2001 没有指定 C 编译器标志,但 POSIX 2001 确实指定了 c99 编译器具有-g调试信息。这至少暗示了不止一个 UNIXoid 传统提供的-g;我'然而,我对 1970 年代末的 UNIX 还不够熟悉,无法说出还应该考虑哪些其他编译器。)

相关内容