Symbol Resolution with addr2line
When running a LÖVE Potion game, the system might encounter an unrecoverable crash. On the Nintendo 3DS, this will trigger the Arm11 Exceptions screen, which provides important crash details. On the Nintendo Switch, crash data is logged to the microSD card under /atmosphere/logs/crash_reports. In both cases, the most important values to look for are the PC (Program Counter) and LR (Link Register) addresses.
- Nintendo 3DS
- Nintendo Switch
/opt/devkitpro/devkitARM/bin/arm-none-eabi-addr2line -aipfCe arm -e path/to/lovepotion.elf [address_one, ...]
/opt/devkitpro/devkitA64/bin/aarch64-none-elf-addr2line -aipfCe -e path/to/lovepotion.elf [address_one, ...]
Replace [address_one], [address_two]
, etc., with the actual memory addresses taken from the crash logs. On Nintendo Switch, look for a line similar to (lovepotion.nro + 0xa30498)
in the crash report, and use the hex value for addr2line
.