tl; dr: özel soruya cevap vermek için, -g3
"Böyle makro tanımları gibi ekstra bilgileri içerir Eğer -g3
kullandığınızda, bazı hata düzeltici makro genişleme destekliyoruz." -g
değil iken,.
Gcc, -g0
'dan (hata ayıklama bilgisi devre dışı bırakılmış) -g3
(maksimum hata ayıklama bilgisi) üzerinden dört düzey hata ayıklama bilgisini desteklemektedir.-g
belirtilmesi
-g2
eşdeğerdir. Merakla, gcc docs, -g
/-g2
'un içerdiği veya hariç tuttuğu bilgiler hakkında çok az şey söyler.
Hata ayıklama bilgisi isteyin ve ayrıca ne kadar bilgi belirtmek için seviye kullanın. Varsayılan seviye 2'dir. Seviye 0 hiç hata ayıklama bilgisi üretmez. Böylece, -g0 negates -g.
Seviye 1 debug düşünmüyorsanız programın bölümlerinde geriye dönük izleme yapmak için yeterli asgari bilgiyi üretir. Bu, işlevlerin ve dış değişkenlerin açıklamalarını ve satır numarası tablolarını içerir, ancak yerel değişkenler hakkında bilgi içermez.
Seviye 3 tür programında bulunan tüm makro tanımları gibi ekstra bilgiler içerir. Bazı hata ayıklayıcılar -g3'ü kullandığınızda makro genişletmeyi destekler.
Dokümantasyonda yer almayan şeyleri bilmek ister misiniz? –
Buraya geldim çünkü başkasının makefile kullanıyorum, ve belgeleme başlamak için bir canavar. Google'dan kolay bir cevap bulmak için StackOverflow üzerinde iyi bir soru. – GreenAsJade