Hallo zusammen,
ich habe nach längerer Abstinenz wieder meinen AVR-ISP (für den
Parallelport) aus dem Schrank geholt. Leider klappt das kompilieren
unter Linux mit der frisch aufgesetzten Toolchain nicht.
Alles außer mfile ist aus der Packetverwaltung von Debian Sid (Aptosid).
Ein einfaches Programm für einen Atmega 8 mit blinkender LED ist im
Anhang.
Denke der Fehler liegt in dem Makefile das mit mfile erstellt wurde.
Hier die Fehlermeldungen:
1 | student@siduxbox:~/111temp$ make
|
2 | avr-gcc -c -mmcu=atmega8 -I. -gstabs -Os -Wall -Wstrict-prototypes -std=gnu99 temp.c -o temp.o
|
3 | temp.c:17:6: warning: return type of ‘main’ is not ‘int’
|
4 | avr-gcc -mmcu=atmega8 -I. -gstabs -Os -Wall -Wstrict-prototypes -std=gnu99 temp.o /home/lomba/111temp/temp.o --output temp.elf -lm
|
5 | /home/lomba/111temp/temp.o: In function `sleep':
|
6 | temp.c:8: multiple definition of `sleep'
|
7 | temp.o:temp.c:8: first defined here
|
8 | /home/lomba/111temp/temp.o: In function `main':
|
9 | temp.c:19: multiple definition of `main'
|
10 | temp.o:temp.c:19: first defined here
|
11 | collect2: ld returned 1 exit status
|
12 | make: *** [temp.elf] Fehler 1
|
Ich verstehe nur, dass die Funktionen doppelt vorhanden sein sollen. Wo
liegt mein Fehler?