Difference between revisions of "Debugging - GDB tricks"
From Free Pascal wiki
Jump to navigationJump to search ([[category:Debugging) |
|||
Line 14: | Line 14: | ||
* Q: How do I examine an ansistring? | * Q: How do I examine an ansistring? | ||
* A: "x/s <stringname>" | * A: "x/s <stringname>" | ||
− | + | ||
+ | == Stop debugger on exception == | ||
+ | * Q: How to stop gdb on exception | ||
+ | * A: b fpc_raiseexception | ||
+ | |||
+ | * Q: How to show call stack | ||
+ | * A: bt | ||
+ | |||
+ | == Work with breakpoints == | ||
+ | * Add: b TObject__Method or b filename.pas:123 | ||
+ | * Show: inf b | ||
+ | * Disable: dis 1 | ||
+ | * Enble: en 1 | ||
+ | * Delete: d 1 | ||
+ | * Delete all: d b |
Revision as of 10:38, 27 March 2008
General tricks
- Some pascal specific patches were excepted; so if possible set language to pascal "set language pascal"
- To get help, use "help <command>" or "help" to see a category list.
- To view datastructures raw, use the "x" command (see "help x")
Examining Type Info
- Q: What function should I use for dumping the type info?
- A: Run x/100c in gdb until it frames. then use 'frame <framenr>' to jump to the correct frame
Inspecting an ansistring
- Q: How do I examine an ansistring?
- A: "x/s <stringname>"
Stop debugger on exception
- Q: How to stop gdb on exception
- A: b fpc_raiseexception
- Q: How to show call stack
- A: bt
Work with breakpoints
- Add: b TObject__Method or b filename.pas:123
- Show: inf b
- Disable: dis 1
- Enble: en 1
- Delete: d 1
- Delete all: d b