GDB Developer Tool (GDT) is a developer script to quickly and easily debug a core file or remote target. It's essentially a wrapper around GDB that can automatically attach to a remote process and generate GDB's "solib-search-path" and "dir" options for you.
- Debug a remote process
- Debug a local core file
- python 2.7
You are able to customize certain parts of GDT. All configuration can be found in config.json
and gdbinit
.
This file contains path and target configurations. The following can be customized:
- gdb_path - full path to the GDB executable
- project_root_path - path to the project's root directory
- symbol_root_path - path to root symbol directory
- excluded_dir_names - names of directories to be excluded from solib path and source path generation (ex. .svn, .git, .vscode, etc.)
- target_ip - the target's IPv4 address
- target_user - the target's username
- target_password - the target's password
- target_debug_port - the port to connect GDB
- target_prompt - the target's command line prompt
This file contains GDB commands to automatically execute during GDB startup. Feel free to add any custom routines or commands here.
TODO
python gdt.py -h
python gdt.py remote -h
python gdt.py core -h
python gdt.py cmd -h
python gdt.py remote -p bin/Service.full
# debug remote process with saved breakpoints
python gdt.py remote -b breakpoints.txt -p bin/Service.full
# debug remote process with symbols (symbol_root_paths in config.json will be ignored)
python gdt.py remote -p bin/Service.full -s bin/Symbols/
python gdt.py cmd Project/gdb_commands.txt
python gdt.py core -c bin/Service.core -p bin/Service.full
# debug core file with symbols (symbol_root_paths in config.json will be ignored)
python gdt.py core -c bin/Service.core -p bin/Service.full -s bin/Symbols/
TODO