www.linuxlinks.com
23 Best Free and Open Source Linux Debuggers
Debugging is an essential part of software development. When a program crashes, behaves unexpectedly or produces incorrect results, a debugger can help identify the cause. Developers can pause execution, step through code and inspect variables, memory and the call stack. Linux offers a wide range of debugging tools. These include source-level debuggers, graphical frontends, language-specific debuggers and utilities for examining compiled binaries. Memory analysis and tracing tools can also help uncover problems that are difficult to reproduce. Some debuggers concentrate on everyday programming tasks, while others specialise in reverse engineering, low-level analysis or investigating problems in running processes. Our selection covers these different approaches. Bug tracking software are covered in our **Issue Tracking roundup**. A memory debugger is a programming tool for finding memory leaks and buffer overflows. These are due to bugs related to the allocation and deallocation of dynamic memory. Programs written in languages that have garbage collection, such as managed code, might also need memory debuggers. Here’s a legendary LinuxLinks-style ratings chart capturing our recommendations. All of the software featured here are free and open source goodness. Click the links in the table to learn more about each debugger. **Debuggers** --- **LLDB**| Next generation, high-performance debugger **Ghidra**| Software reverse engineering framework **Delve**| Source level debugger for the Go programming language **GDB**| The GNU Debugger **Valgrind**| A memory debugger and profiler **Radare2**| Portable reversing framework **BugStalker**| Rust debugger **Xdebug**| Extension for PHP to aid debugging and development **Seer**| GUI frontend to GDB **iaito**| Graphical interface for radare2 **KDbg**| Graphical user interface to GDB **strace**| Diagnostic, debugging and instructional userspace utility **rr**| Record-and-replay debugger **gf**| Lightweight GDB interface with source, stack and memory views **drgn**| Programmable debugger that puts scripting at the centre **cgdb**| Lightweight console frontend to the GNU debugger **PuDB**| Console-based visual debugger for Python **nnd**| Partially inspired by RemedyBG **bashdb**| Source-code debugger for bash; follows the GDB command syntax **PINCE**| Memory scanning, process manipulation and reverse engineering **edb**| Low-level debugging with disassembly and register inspection **Sysprof**| Profile an application or entire system **crash**| Linux kernel crash analysis utility This article has been updated to reflect the changes outlined in our **recent announcement**. LinuxLinks helps you discover the best free and open source software for Linux. Explore our extensive collection of **recommended applications** , including alternatives to popular proprietary software. We also publish software reviews, Linux tutorials, hardware reviews, free programming books and articles covering the wider open source community. Browse our **Linux resources** to discover more. Know a useful free and open source Linux application we haven't covered? **Suggest a program** for inclusion. Has your software been featured on LinuxLinks? Display one of our **Featured on LinuxLinks badges** on your website or GitHub README. ---