HEX ELF
Dateikonvertierung

HEX in ELF konvertieren

SCHNELLE ANTWORT
Ist es möglich, HEX in ELF zu konvertieren?
Ja - HEX lässt sich in ELF konvertieren.

Führen Sie avr-objcopy -I ihex -O elf32-avr firmware.hex firmware.elf aus, um eine gültige ELF-Datei zu erstellen. Die ELF lässt sich korrekt assemblieren, verfügt jedoch über keine Symboltabelle oder DWARF-Debug-Sektionen - diese stammen vom Compiler, nicht aus der .hex-Datei. Überprüfen Sie zuerst Ihr Build-Verzeichnis; der Compiler hat wahrscheinlich bereits eine .elf neben der .hex erstellt.

Auch nach ELF: FAP · S19

Auf dieser Seite

Getestet auf macOS, Windows & Linux
Zuletzt verifiziert am Oct 2026

Weitere kostenlose Konverter

HEIC, PNG, WEBP, MP3 und mehr - jedes Tool hier ist kostenlos.

Toolbox öffnen

Warum HEX in ELF konvertieren?

Einige eingebettete Toolchains und Debugger akzeptieren nur ELF-Eingaben, keine rohen HEX-Daten. Das Verpacken einer .hex in .elf ermöglicht es Ihnen, Firmware in GDB oder Flash-Utilities zu laden, die das ELF-Format erfordern, selbst ohne Symboltabelle. Die vollständige ELF mit Symbolen und Debug-Informationen wird vom Compiler erstellt; die Konvertierung aus HEX liefert nur eine reduzierte Hülle.

Wie man HEX in ELF konvertiert

avr-objcopy OPEN-SOURCE

Führen Sie avr-objcopy -I ihex -O elf32-avr firmware.hex firmware.elf aus; ersetzen Sie elf32-avr durch das korrekte Ziel (z. B. elf32-littlearm für ARM Cortex-M). avr-objcopy wird mit avr-gcc ausgeliefert und ist in der Arduino IDE enthalten.

arm-none-eabi-objcopy OPEN-SOURCE

Führen Sie für ARM Cortex-M-Ziele arm-none-eabi-objcopy -I ihex -O elf32-littlearm firmware.hex firmware.elf aus der GNU Arm Embedded Toolchain aus.

Über diese Formate

Qualität & worauf zu achten ist

  • Die Ausgabe-ELF enthält nur Rohbytes an ihren Zieladressen; Sektionsnamen werden generisch sein (z. B. .sec1) anstatt der ursprünglichen Namen wie .text, .data, .bss, die vom Compiler zugewiesen wurden.
  • Wenn Sie die Firmware selbst kompiliert haben, enthält das Build-Verzeichnis wahrscheinlich bereits eine .elf neben der .hex - prüfen Sie dies vor der Konvertierung.
  • Das Architektur-Flag -O elf32-avr muss mit der tatsächlichen CPU übereinstimmen; die Verwendung des falschen Flags führt zu einer ELF, die von Debuggern oder Flash-Programmen abgelehnt wird.

Häufig gestellte Fragen

Kann ich Funktionsnamen und Debug-Symbole aus einer HEX-Datei wiederherstellen?
Nein - Intel HEX speichert nur Rohbytes und Speicheradressen; Symbolnamen, DWARF-Debug-Informationen und Sektionsnamen sind nicht vorhanden.
Wo befindet sich avr-objcopy auf meinem Rechner?
Es wird mit avr-gcc ausgeliefert und ist in der Arduino IDE unter hardware/tools/avr/bin/ zu finden; verwenden Sie arm-none-eabi-objcopy für ARM-Ziele.
Wird die resultierende ELF korrekt disassembliert?
Ja - die Rohbytes und Ladeadressen sind intakt, sodass das Disassemblieren funktioniert, aber Funktions- und Variablennamen werden fehlen.