2014-11-06 9 views
5

Ich schreibe ein kleines Programm. Wenn ich eine der Optionen ausführe, erhalte ich den folgenden Fehler.Anzeigen von Core Dumps

terminate called after throwing an instance of 'std::invalid_argument' 
what(): stoi 
Aborted (core dumped) 

Ich habe Blick in das Verzeichnis, in dem ich die CPP speichern und H-Dateien und Kern dort erscheint, nachdem ich es laufen. Ich verwendet habe,

ulimit -c unlimited 

Und ich habe es mit

unlimit -a. 

Als ich GDB in meinem Terminal laufen und versuchen Kern ich die folgende Antwort

not in executable format: File format not recognized 

Wie würde ich zugreifen schau dir meinen Kernspeicher an, damit ich sehen kann, was das verursacht?

Antwort

6

Um eine Coredump mit GDB, übergeben sie als die zweiten Argument GDB, nachdem die ausführbare Datei zu analysieren:

gdb executable core 

GDB wird den Zustand der ausführbaren Datei im Moment ist es core dumped laden. Sie können seinen Speicher untersuchen (einschließlich des Stack-Backtrace sowie aller Daten im Heap oder Stack), können jedoch keine Aktionen ausführen, für die die ausführbare Datei ausgeführt werden muss (z. B. schrittweise, fortlaufend oder aufrufend). .

+0

Das hat super funktioniert! Vielen Dank! – maxcollector

Verwandte Themen