Hallo! Warum lässt sich dieses Programm (siehe Anhang) nicht
kompilieren? Makefile ist korrekt, ich benutze GCC mit
ProgrammersNotepad2.
Folgende Fehlermeldung kommt:
Compiling: test.c
avr-gcc -c -mmcu=at90s8535 -I. -gstabs -Os -funsigned-char
-funsigned-bitfields -fpack-struct -fshort-enums -Wall
-Wstrict-prototypes -Wa,-adhlns=test.lst -std=gnu99
-Wp,-M,-MP,-MT,test.o,-MF,.dep/test.o.d test.c -o test.o
test.c: In function `idle_milli':
test.c:11: warning: implicit declaration of function `read_timer_16'
test.c: At top level:
test.c:15: warning: function declaration isn't a prototype
test.c:15: error: conflicting types for 'read_timer_16'
test.c:11: error: previous implicit declaration of 'read_timer_16'
was here
make.exe: *** [test.o] Error 1
> Process Exit Code: 2
Achja, ganz vergessen: Bei einem Schulkollegen lässt es sich problemlos kompilieren, auch mit Programmers Notepad und GCC (vielleicht aber einer andere Version, keine Ahnung). Aber daran sollte es ja nicht liegen, oder? Ist ja schließlich eine Standardfunktion. Fehlen bei mir vielleicht irgendwelche Bibliotheken?
Das geht bei deinen Kollegen auch nicht (zumindest nicht ohne Warnung). Der Compiler stolpert über die Anwendung der Funktion read_timer_16() bevor du sie bekannt gemacht hast. Schreibe unsigned int read_timer_16(); unter die #define Zeile und zumindest der Fehler ist weg. Habe den Code aber sonst nicht weiter angeschaut.
Hey, danke, jetzt läuft es ohne jegliche Warnung oder Fehler ab.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.