Heim >Backend-Entwicklung >C++ >Wie debugge ich C-STL-Objekte mit Pretty Printing in Eclipse CDT?
So aktivieren Sie GDB Pretty Printing für C-STL-Objekte in Eclipse CDT
Einführung
GDB Pretty Printing erleichtert das Debuggen von C-Programmen, indem STL-Objekte in einem für Menschen lesbaren Format angezeigt werden. Diese Anleitung bietet eine Schritt-für-Schritt-Lösung zum Aktivieren dieser Funktion in Eclipse CDT.
Lösung
1. Installieren Sie die Python-Skriptunterstützung für GDB
Laden Sie die neueste Version von GDB mit Python-Skriptunterstützung herunter und installieren Sie sie. Unter Linux kann dies mit dem folgenden Befehl erfolgen:
sudo apt-get install gdb python-gdb
2. Holen Sie sich Python Pretty Printers
Führen Sie den folgenden Git-Befehl aus, um die Pretty Printers herunterzuladen:
svn co svn://gcc.gnu.org/svn/gcc/trunk/libstdc++-v3/python
3. Bearbeiten Sie die .gdbinit-Datei
Erstellen Sie eine .gdbinit-Datei in Ihrem Home-Verzeichnis und fügen Sie die folgenden Zeilen hinzu:
python import sys sys.path.insert(0, '/home/YOUR_NAME_HERE/distribs/gdb_printers/python') from libstdcxx.v6.printers import register_libstdcxx_printers register_libstdcxx_printers (None) end
Ersetzen Sie '/home/YOUR_NAME_HERE/distribs/gdb_printers/python' mit dem richtigen Pfad zum Python-Unterverzeichnis in Ihrem Checkout Verzeichnis.
4. Verwenden von Pretty Printing in Eclipse CDT
Konfigurieren Sie Eclipse für die Verwendung von GDB und der .gdbinit-Datei:
Zusätzliche Befehle für verbesserte Ausgabe
Sie können verbessern GDB-Ausgabe mit diesen Befehlen:
set print pretty on set print object on set print static-members on set print vtbl on set print demangle on set demangle-style gnu-v3 set print sevenbit-strings off
Mit diesen Einstellungen sollten Sie jetzt in der Lage sein, C-Programme mit verbesserter STL-Objektdarstellung in Eclipse CDT zu debuggen.
Das obige ist der detaillierte Inhalt vonWie debugge ich C-STL-Objekte mit Pretty Printing in Eclipse CDT?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!