README.md
1# armv4t
2
3An incredibly simple emulator to run elf binaries compiled with `arm-none-eabi-cc -march=armv4t`.
4
5This emulator isn't based off any particular system -- it's moreso just a test-bed for showing off various bits of `gdbstub` functionality.
6
7## Usage
8
9Run `gdb-arm-none-eabi` (or alternatively, `gdb-multiarch`) from the `test_bin` directory to automatically connect to the emulator + load debug symbols for the emulated binary.
10
11This example can be run using:
12
13```bash
14cargo run --example armv4t --features=std
15```
16
17**NOTE:** If debug symbols couldn't be loaded, try rebuilding `test.elf` locally (requires the `arm-none-eabi` toolchain to be installed), and recompiling the example.
18
19### Unix Domain Sockets
20
21GDB versions since \~2018 support running a debugging session over Unix Domain Sockets (UDS). Debugging over UDS can feel much snappier than debugging over loopback TCP.
22
23Running the example with the `--uds` flag will bind the GdbStub to a socket at `/tmp/armv4t_gdb`.
24
25This feature is only supported on Unix-like systems.
26