C ++ entspricht der Python-Traceback-Bibliothek

8

Ich muss einige Debugging-Bibliotheken / Tools bekommen, um den Stack-Informationsdruck zum stdout zurückzuverfolgen.

Pythons Traceback Bibliothek kann ein Beispiel sein.

Was kann die C ++ - Entsprechung zur Python-Traceback-Bibliothek sein?

    
prosseek 04.03.2011, 00:21
quelle

5 Antworten

2

Dies ist plattformspezifisch und hängt auch davon ab, wie Sie Code kompilieren. Wenn Sie Code mit gcc mit -fomit-frame-pointer kompilieren, ist es sehr schwierig, einen nützlichen Backtrace zu erhalten, der in der Regel Heuristiken benötigt. Wenn Sie Bibliotheken verwenden, die dieses Flag verwenden, werden Sie auch Probleme bekommen - es wird oft für stark optimierte Bibliotheken verwendet (z. B. nVidias OpenGL-Bibliotheken).

Dies ist keine eigenständige Lösung, da es Teil einer größeren Engine ist, aber der Code ist hilfreich:

Dies beinhaltet Backtracing mit dem Frame-Pointer mit gcc wenn verfügbar und heuristische Backtracing wenn nicht; Dies kann dazu führen, dass in der Ablaufverfolgung falsche Einträge angezeigt werden, aber um ein Backtrace für einen Absturzbericht zu erhalten, ist es viel besser, als die Ablaufverfolgung vollständig zu verlieren.

In diesen Verzeichnissen gibt es anderen Code, den Sie betrachten möchten, um diesen Code zu verwenden (Symbolsuche, Signalverarbeitung); Diese Links sind ein guter Ausgangspunkt.

    
Glenn Maynard 04.03.2011, 00:48
quelle
1

Probieren Sie google core dumper aus, damit erhalten Sie bei Bedarf einen Core Dump.

>     
hhafez 04.03.2011 00:39
quelle
1

Es gibt jetzt cpp-traceback , es handelt sich genau um Python-Tracebacks für C ++.

    
dhaffey 23.03.2013 21:59
quelle
0

Ich hatte in der Vergangenheit Erfolg mit libunwind . Ich weiß, es funktioniert gut mit Linux, aber nicht sicher, wie Windows ist, obwohl es behauptet, tragbar zu sein.

    
JaredC 04.03.2011 00:50
quelle
0

Wenn Sie im Falle eines Absturzes nach einem Stack-Trace suchen, probieren Sie google breakpad aus "

    
Nitin Bhide 04.03.2011 06:24
quelle

Tags und Links