2017-02-25 156 views
-7

有时我看到用'gcc -g3'编译的开源代码 - 在“g”之后加一个数字是什么意思?与“g”相比,“g3”的先进功能是什么?'gcc -g'和'gcc -g3'有什么区别?

+2

您是否试过阅读gcc的文档? –

+0

'man gcc'是你的朋友。显示一点努力。 –

回答

4

documentation据:

-glevel 

请求调试信息,还可以使用级指定多少信息。默认级别是2

凡3电平的装置:

3级包括额外的信息,例如存在的所有程序中的宏定义。有些调试器在使用-g3时支持宏扩展。

3

从手动约-g

0级都不会产生任何调试信息。因此,-g0否定-g。

1级会产生最少的信息,足以使您不打算调试的程序部分回溯。这包括函数和外部变量的描述,但没有关于局部变量和没有行号的信息。

3级包含额外信息,如程序中存在的所有宏定义。有些调试器在使用-g3时支持宏扩展。