2017-02-25 154 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時支持宏擴展。