Parsing failed
The file could not be parsed for debug symbols.
PARSE_FAILED
Symptoms
- The upload completes, then parsing fails.
- The same file loads in your debugger, or it does not — both cases are worth checking.
Likely causes
- The image was linked without -g, so there are no DWARF sections to read.
- The image was stripped after linking, by an explicit strip step or by -s in the link flags.
- The file is a valid ELF for a host architecture, not an ARM Cortex-M image.
- The debug info uses a DWARF version the parser does not cover.
How to fix it
-
Check whether DWARF is present at all
If this prints nothing, the problem is the build, not the upload — nothing on our side can recover symbols that were never emitted.
arm-none-eabi-readelf -S firmware.elf | grep debug -
Rebuild with debug info and without stripping
Add -g to the compile flags and remove -s from the link flags. A release build can keep -O2 and still carry full DWARF.
CFLAGS += -g LDFLAGS := $(filter-out -s,$(LDFLAGS)) -
Confirm the target architecture
The header should report an ARM machine type. A host-built binary will parse as something else entirely.
arm-none-eabi-readelf -h firmware.elf | grep Machine