GDBFrontend is an easy, flexible and extensionable gui debugger.
Installing
Deb Package (Debian / Ubuntu / KDE Neon)
You can install GDBFrontend via deb package for Debian-based distributions.
You can install it from following commands:
echo “deb [trusted=yes] https://oguzhaneroglu.com/deb/ ./” |
sudo tee -a /etc/apt/sources.list > /dev/null
sudo apt update
sudo apt install gdbfrontend
After installing with APT, you will get updates for new releases on APT upgrade.
You can get upgrades with following commands:
sudo apt update
sudo apt upgrade gdbfrontend
and you can run it:
gdbfrontend
Running From GIT
You can download latest source and run it.
Requirements
You can run gdb-frontend with following commands:
git clone https://github.com/rohanrhu/gdb-frontend.git gdb-frontend
cd gdb-frontend
./gdbfrontend
and you can open it with:
http://127.0.0.1:5551/terminal/
or without terminal:
http://127.0.0.1:5551/
You can open GDB shell with the command:
tmux a -t gdb-frontend
Flatpak
Flatpak package is a TODO.
./gdbfrontend
–help
GDBFrontend is a easy, flexible and extensionable gui debugger.
Options:
–help, -h: Shows this help message.
–version, -v: Shows version.
–gdb-executable=PATH, -g PATH: Specifies GDB executable path (Default is “gdb” command on PATH environment variable.)
–tmux-executable=PATH, -tmux PATH: Specifies Tmux executable path (Default is “tmux” command on PATH environment variable.)
–terminal-id=NAME, -t NAME: Specifies tmux terminal identifier name (Default is “gdb-frontend”.)
–listen=IP, -l IP: Specifies listen address for HTTP and WS servers.
–port=PORT, -p PORT: Specifies port range for three ports to (Gotty: PORT, HTTP: PORT+1, WS: PORT+2).
–http-port=PORT: Specifies HTTP server port.
–server-port=PORT: Specifies WS server port.
–gotty-port=PORT: Specifies Gotty server port.
–readonly, -r: Makes code editor readonly. (Notice: This option is not related to security.)
–verbose, -V: Enables verbose output.
Options
–help, -h
Shows help text.
–version, -v
Shows version.
–gdb-executable=PATH, -g PATH
You can specify GDB executable path like gdbfrontend –-gdb-executable=/path/to/gdb. (Optional)
–tmux-executable=PATH, -tmux PATH
You can specify Tmux executable path like gdbfrontend –tmux-executable=/path/to/tmux. (Optional)
–terminal-id=PATH, -t PATH
You can specify Tmux terminal id like gdbfrontend –terminal-id=terminal-name. (Default: gdb-frontend)
–listen=IP, -l IP
Specifies listen address for HTTP and WS servers.
–port=PORT, -p PORT
Specifies port range for three ports to (Gotty: PORT, HTTP: PORT+1, WS: PORT+2).
–http-port=PORT
Specifies HTTP server port.
–server-port=PORT
Specifies WS server port.
–gotty-port=PORT
Specifies Gotty server port.
–readonly, -r
Makes code editor readonly. (Notice: This option is not related to security.)
–verbose, -v
Enables verbose output.
Troubleshooting
Zombie Processes
Sometimes GDB and gdb-frontend may not be closed correctly. In this case, you can terminate gdb-frontend shell.
tmux kill-session -t gdb-frontend
GDB-Related Issues and Tips
Windows
In fact, gdb-frontend is able to run on Windows but there are some serious issues in the GDB’s Windows version those avoid using gdb-frontend on Windows. Of course you can use gdb-frontend on WSL if you are using Windows 10.
Issues About Windows-GDB
Introduction Google Dorking is a technique where advanced search operators are used to uncover information…
Introduction In cybersecurity and IT operations, logging fundamentals form the backbone of monitoring, forensics, and…
What is Networking? Networking brings together devices like computers, servers, routers, and switches so they…
Introduction In the world of Open Source Intelligence (OSINT), anonymity and operational security (OPSEC) are…
Introduction As cyber threats grow more sophisticated, organizations need more than just firewalls and antivirus…
Introduction When it comes to cybersecurity and ethical hacking, one of the most effective ways…