Aiming to be a simple cross-platform framework for debugging and object inspection.
Fully written in D's BetterC mode, and available as a DUB package.
It is currently available for Windows, Linux, and FreeBSD, under x86, x86-64, Armv7, and AArch64.
Written from scratch for educational purposes.
There are currently no stable APIs. Every releases pre-1.0 will see frequent changes to the API.
None of the functions are currently thread-safe.
Compiling a static binary on one C runtime may not work on another due to specific behaviors when using ptrace(2).
Usage for alicedbg
(debugger) and alicedump
(dumper) can be looked in the
repository Wiki, or invoking the --help
argument.
The disassembly feature is provided by Capstone 4.0.2 when it is available on the system. For Windows, the dynamic library can be downloaded on GitHub.
For other platforms, package names are typically:
- Debian, Ubuntu 22.04 and later, SUSE:
libcapstone4
- Ubuntu 20.04:
libcapstone3
(4.0.1) - RHEL:
capstone-devel
- Alpine:
capstone-dev
Capstone is licensed under the BSD 3-Clause license.
There are two main branches:
marisa
: Main development branch. Very unstable.stable
: Last released branch.
This project primarily uses DUB for compilation and unittesting.
Wiki contains more information on structure, features, and compilation instructions.
Because I'm not very good at managing people and I tend to be a little too pedantic, I am currently not looking for contributors, sorry.
However, feel free to provide feedback regarding contributor management, features, enhancements, and fixes. It's appreciated.
This project is licensed under the BSD 3-Clause Clear license.