เป็นไปได้ไหมที่จะบันทึก / ถ่ายโอนไฟล์หลักโดยใช้ gdb บางครั้งฉันต้องการบันทึกไฟล์เพื่อวิเคราะห์ในภายหลัง
เป็นไปได้ไหมที่จะบันทึก / ถ่ายโอนไฟล์หลักโดยใช้ gdb บางครั้งฉันต้องการบันทึกไฟล์เพื่อวิเคราะห์ในภายหลัง
คำตอบ:
ออกคำสั่ง 'create-core-file' ใน 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
generate-core-file
อาร์กิวเมนต์แรกหากคุณต้องการบันทึกในบางที่
คุณยังสามารถใช้gcore <pid>
เพื่อผลิตคอร์
gcore
จะได้รับการสนับสนุนใน gdb เวอร์ชันใหม่กว่าเท่านั้น generate-core-file
คนเก่าต้อง
generate-core-file
ทั้งสองที่ทำสิ่งเดียวกัน
pwd
คำสั่ง หากต้องการเปลี่ยนก็ทำได้cd
เช่นเดียวกับที่เชลล์