Salvataggio del file core in gdb


90

È possibile salvare / eseguire il dump del file core utilizzando gdb? A volte voglio salvare il file per analizzarlo in seguito.

Risposte:


140

Esegui il comando "generate-core-file" in gdb.

(gdb) help generate-core-file
Save a core file with the current state of the debugged process.
Argument is optional filename.  Default filename is 'core.<process_id>'.
(gdb) break main
Breakpoint 1 at 0x400e0b: file utils/udec.c, line 36.
(gdb) r
Starting program: /home/nos/build/utils/udec

Breakpoint 1, main (argc=1, argv=0x7fffffffe9a8) at utils/udec.c:36
36              int fileargc = 1;
(gdb) generate-core-file
Saved corefile core.7336

4
Verrà salvato nella directory di lavoro corrente di GDB, che può essere visualizzata tramite il pwdcomando. Se hai bisogno di cambiarlo, puoi farlo con cd, proprio come in una shell.
— Jonathon Reinhart

3
@Jonathon_Reinhart passa il percorso del file core come generate-core-fileprimo argomento se vuoi salvarlo in un determinato posto
— SergA

19

Puoi anche usare gcore <pid>per produrre core.


questo dovrebbe essere nella parte dei commenti
— V-rund Puro-hit

8
Dai un'occhiata a questa pagina stackoverflow.com/help/privileges/comment : Quando non dovrei commentare? .... "Rispondere a una domanda o fornire una soluzione alternativa a una risposta esistente;"
— Meinew

1
Sembra che gcoresia supportato solo nelle versioni più recenti di gdb. Quelli vecchi richiedono generate-core-file.
— scai

Questo sembra essere un nome breve per generate-core-file, entrambi fanno la stessa cosa.
— Ciro Santilli 郝海东 冠状 病 六四 事件 法轮功
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.