GCC erstellt selbst bei Verwendung der Option -g keine Zeilennummerninformationen

7

Ich habe GCC 4.8.1 von der Quelle erstellt und installiert:

%Vor%

Und ich habe ein einfaches, nutzloses Programm geschrieben:

%Vor%

Jetzt kompiliere ich das:

%Vor%

Dann begann die Fehlersuche mit GDB:

%Vor%

Führe es aus und Strg + C es sofort:

%Vor%

Ich habe Funktionsnamen im Backtrace, aber keine Zeilennummern in meinem Code:

%Vor%

Was ist falsch gelaufen? Vielleicht ist es etwas mit der Konfiguration?

    
Calmarius 23.08.2013, 16:23
quelle

2 Antworten

15

Ihr gdb ist zu alt - Sie benötigen eine neuere gdb (ich benutze 7.6), um die von gcc 4.8.1 generierten Debugging-Informationen zu verstehen.

    
Chris Dodd 23.08.2013, 17:04
quelle
8

Normalerweise verwendet GCC als Hauptdebugging-Dateiformat dwarf. Sie müssen die Zwergenunterstützung aktivieren, wenn Sie gcc mit dem Flag --with-dwarf2 erstellen.

Beim Erstellen Ihres kompilierten Objekts können Sie -ggdb anstelle von -g verwenden, was eine spezifischere Lösung ist, aber nur für gdb .

    
user1154 23.08.2013 16:29
quelle

Tags und Links