gdb에 코어 파일 저장


91

gdb를 사용하여 코어 파일 을 저장 / 덤프 할 수 있습니까? 때로는 나중에 분석하기 위해 파일을 저장하고 싶습니다.

답변:


140

gdb에서 'generate-core-file'명령을 실행하십시오.

(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
GDB의 현재 작업 디렉토리에 저장되며 pwd명령을 통해 볼 수 있습니다 . 변경해야하는 경우 cd셸 에서처럼를 사용 하여 변경할 수 있습니다 .
조나단 라인 하트

3
으로 코어 파일 경로를 통과 @Jonathon_Reinhart generate-core-file특정 장소에 저장하려는 경우 첫 번째 인수
SergA

19

gcore <pid>코어를 생성 하는 데 사용할 수도 있습니다 .


이것은 코멘트 부분에 있어야합니다
V-rund Puro-hit

8
이 페이지를보십시오. stackoverflow.com/help/privileges/comment : 언제 댓글을 달면 안 되나요? .... "질문에 답하거나 기존 답변에 대한 대체 솔루션을 제공합니다."
Meinew

1
gcore최신 gdb 버전에서만 지원되는 것 같습니다 . 오래된 것들은 generate-core-file.
scai

이것은 generate-core-file둘 다 같은 일을하는의 짧은 이름 인 것 같습니다.
Ciro Santilli 郝海东 冠状 病 六四 事件 法轮功
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.