avr-gcc ist ein Cross-Compiler, d.h. er erzeugt unter WIndows oder Linux aus einer QUelldatei eine Datei im elf32-Format, die Informationen zum ausführbaren Programm enthält (zB Befehle, Daten, Debug-Info, Lade-Adressen, ...)
Wenn du ein C-Programm auf dem Host ausführen willst, dann brauchst du einen anderen Compiler, etwa einen 'normalen' gcc.
Programme werden aber auf dem Host nicht wirklich ausführbar sein, denn dein Host hat eine ganz andere Hardware (Register, Ports, etc) und Sachen wie printf() oder fopen() sind auf einem AVR zunächst mal nicht sinnvoll und AFAIK auch nicht in der libc drinne.
Allerdings kannst du die für AVR übersetzten Programme auf dem Host simulieren, zB via simulavr. Nach starten von simulavr geht man mit dem avr-gdb da ran und kann durchsteppen, aber eine zugrundeliegende Hardware hast du immer nocht nicht, die dir zB externe Interrupts auslösen könnte.
Lesezeichen