Unix/Linux C++-Debugger, der STL-Container unterstützt?

Unix/Linux C++-Debugger, der STL-Container unterstützt?

Derzeit verwende ich gcc-4.3.6 und Eclipse IDE für die C++-Entwicklung. Ich möchte mein Projekt in Eclipse debuggen gdb. Ich habe Schwierigkeiten beim Debuggen von Code, der STL-Container enthält. Außerdem verwende ich STL nicht direkt, sondern habe Wrapper für jeden Container.

Ich weiß, dass wir Pretty Printing verwenden müssen, um in STL-Container zu schauen, aber das funktioniert in Eclipse nicht. Ich habe früher mit Visual Studio gearbeitet. Ich bin auf gccEclipse umgestiegen, weil die Kompilierungszeit in VS im Vergleich zu gcc zu lang ist. Der Debugger in VS ist jedoch sehr gut. Ich weiß nicht viel über gccEclipse. Ich möchte nur wissen, ob es einen ähnlichen Debugger in Linux oder Unix gibt.

Antwort1

Die von bereitgestellten Debugfunktionen gdbbasieren auf dem Symbolsatz, der mit Ihrem kompilierten Code geliefert wird.

Eigentlich ist keine Debug-Version für STL verfügbar, aber es gibt mindestens zwei Portierungen, die Ihrem Code Debug-Symbole hinzufügen können:

http://www.stlport.org/

http://code.google.com/p/stl-debug/

gdbohne Debugging sind Symbole nutzlos, daher müssen Sie für jede in Ihrem Code verwendete Bibliothek eine „Debugversion“ verwenden, wenn Sie Ihren Code testen möchten.

Antwort2

Sie können auch den Debugger von KDevelop oder QtCreator ausprobieren. Sie interagieren mit der neuesten Python-Unterstützung von gdb und unterstützen das Durchsuchen von STL-Containern ebenso wie von Qt.

(Haftungsausschluss: Ich habe sie nicht viel ausprobiert, dafür ist die Unterstützung von GDB für Remote-Debugging zu schlecht.)

verwandte Informationen