Frozen static builds of everyone's favorite debugger!π§
- Download: Get the latest release from the releases page.
Who doesn't love GDB? It's such a powerful tool, with such a great package.
But sometimes, you run into one of these problems:
- You can't install GDB on your machine
- You can't install an updated version of GDB on your machine
- Some other strange embedded reasons...
This is where gdb-static
comes in! We provide static builds of gdb
(and gdbserver
of course), so you can run them on any machine, without any dependencies!
Features
- Static Builds: No dependencies, no installation, just download and run!
- Musl Based: We use Musl in order to create distribution-independant binaries that can work anywhere.
- Latest Versions: We keep our builds up-to-date with the latest versions of GDB.
- Builtin Python (Optional): We provide builds with Python support built-in.
- XML Support: Our builds come with XML support built-in, which is useful for some GDB commands.
- Wide Architecture Support: We support a wide range of architectures:
- aarch64
- arm
- mips
- mipsel
- powerpc
- x86_64
To get started with gdb-static
, simply download the build for your architecture from the releases page, extract the archive, and copy the binary to your desired platform.
You may choose to copy the gdb
binary to the platform, or use gdbserver
to debug remotely.
We provide two types of builds:
- Slim builds, that contains most of the features, beside the ones mentioned below.
- Full builds that contains all of the slim build features, and also contains:
- Python support
- Cross-architecture debugging.
Note that in order to enable cross-architecture debugging, we have to disable the simulator feature, since not all targets have a simulator.
Slim builds are approximately ~10MB. Full builds are approximately ~70MB.
You can edit the full_build_conf.sh file to disable full build exclusive features.
Note
Before building, make sure to initialize & sync the git submodules.
Alternatively, you can build gdb-static
from source. To do so, follow the instructions below:
Pre-requisites
To be able to build `gdb-static`, you will need the following tools installed on your machine:
- Docker
- Docker buildx
- Git
Building for a specific architecture
To build gdb-static
for a specific architecture, run the following command:
make build-<ARCH>-[slim/full]
Where <ARCH>
is the architecture you want to build for, and slim/full
determines the build type (see here).
The resulting binary will be placed in the build/artifacts/
directory:
build/
βββ artifacts/
βββ <ARCH>/
βββ ...
Building for all architectures
To build gdb-static
for all supported architectures, run the following command:
make build
The resulting binary will be placed in the build/artifacts/
directory.
-
Bug Report: If you see an error message or encounter an issue while using gdb-static, please create a bug report.
-
Feature Request: If you have an idea or if there is a capability that is missing and would make
gdb-static
more robust, please submit a feature request.