2014-11-06 8 views
5

Sto scrivendo un programma di dimensioni ridotte. Quando eseguo una delle opzioni ottengo il seguente errore.Visualizzazione di core dump

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

ho sguardo nella directory in cui posso conservare il cpp e .h, e il nucleo viene visualizzata lì dopo l'eseguo. Ho usato

ulimit -c unlimited 

E ho controllato con

unlimit -a. 

Quando eseguo gdb nel mio terminale e provo ad accedere nucleo ottengo la seguente risposta

not in executable format: File format not recognized 

Come dovrei guarda il mio core dump in modo che possa vedere cosa lo sta causando?

risposta

6

Per analizzare un core dump con GDB, passarlo come secondo argomentoa GDB, dopo l'eseguibile:

gdb executable core 

GDB caricherà lo stato dell'eseguibile al momento scaricato nucleo. Sarai in grado di esaminare la sua memoria (incluso lo stack backtrace, così come tutti i dati nell'heap o nello stack), ma non sarà in grado di eseguire azioni che richiedono l'esecuzione dell'eseguibile (come stepping, continue o chiamate) .

+0

Ha funzionato alla grande! Grazie! – maxcollector