Forum: Compiler & IDEs Programm mit Timer lässt sich nicht kompilieren


von Sebastian (Gast)


Angehängte Dateien:

Lesenswert?

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

von Sebastian (Gast)


Lesenswert?

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?

von Sebastian Schildt (Gast)


Lesenswert?

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.

von Sebastian (Gast)


Lesenswert?

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
Noch kein Account? Hier anmelden.