c't Projekte - c't-Bot und c't-Sim - Mailinglisten

c't-Bot und c't-Sim


[Voriger (Datum)] [Nächster (Datum)] [Voriger (Thread)] [Nächster (Thread)]
[Nach Datum][Nach Thread]

Re: [ct-bot] FIFO kompiliert nicht??

Absender: Timo Sandmann
Datum: Di, 07.04.2009 23:25:08
In-reply-to: <222830.20505.qm@xxxxxxxxxxxxxxxxxxxxxxxxxxxx>
References: <000a01c9b6c7$669d9400$0200a8c0@mexpnew> <459164.3696.qm@xxxxxxxxxxxxxxxxxxxxxxxxxxxx> <043D25C7-21DA-48C2-B3E8-32A313BD2BA4@xxxxxxxxxxxxxxx> <222830.20505.qm@xxxxxxxxxxxxxxxxxxxxxxxxxxxx>


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hallo,

das war ein Bug im Code, wenn OS_AVAILABLE in ct-Bot.h aus ist. Sollte jetzt in der neuesten Version aber behoben sein. Vielen Dank für den Hinweis!

Deine WinAVR-Version scheint schon etwas älter zu sein (wegen "E:\ctbot \workspace\ct-Bot/include/os_thread.h:107: warning: 'OS_task' attribute directive ignored"), am besten aktualisierst du mal auf die aktuelle Version von WinAVR.

Grüße,
Timo


Am 07.04.2009 um 22:01 schrieb Fred Ammann:
Entschuldigung - mein erstes Mail heute war etwas schnell getippt. Ich verwende Eclipse 3.2.2 auf WinXP. Es gibt den Fehler bei der C/C+ + Build Einstellung "Debug-MCU-W32" und "Debug-W32".

Hier die Fehlermeldung für Debug-W32:
----------------------------------------------------
In file included from E:/ctbot/workspace/ct-Bot/include/map.h:31,
from ../bot-logic/behaviour_drive_area.c:36:
E:/ctbot/workspace/ct-Bot/include/fifo.h:43: error: syntax error before "signal" E:/ctbot/workspace/ct-Bot/include/fifo.h:43: warning: no semicolon at end of struct or union E:/ctbot/workspace/ct-Bot/include/fifo.h:44: warning: type defaults to `int' in declaration of `fifo_t' E:/ctbot/workspace/ct-Bot/include/fifo.h:44: warning: data definition has no type or storage class E:/ctbot/workspace/ct-Bot/include/fifo.h:52: error: syntax error before '*' token E:/ctbot/workspace/ct-Bot/include/fifo.h:52: warning: function declaration isn't a prototype E:/ctbot/workspace/ct-Bot/include/fifo.h:62: error: syntax error before '*' token E:/ctbot/workspace/ct-Bot/include/fifo.h:62: warning: function declaration isn't a prototype E:/ctbot/workspace/ct-Bot/include/fifo.h:71: error: syntax error before '*' token E:/ctbot/workspace/ct-Bot/include/fifo.h:71: warning: function declaration isn't a prototype E:/ctbot/workspace/ct-Bot/include/fifo.h:78: error: syntax error before '*' token E:/ctbot/workspace/ct-Bot/include/fifo.h:78: warning: function declaration isn't a prototype E:/ctbot/workspace/ct-Bot/include/fifo.h: In function `_inline_fifo_put': E:/ctbot/workspace/ct-Bot/include/fifo.h:79: error: `f' undeclared (first use in this function) E:/ctbot/workspace/ct-Bot/include/fifo.h:79: error: (Each undeclared identifier is reported only once E:/ctbot/workspace/ct-Bot/include/fifo.h:79: error: for each function it appears in.) E:/ctbot/workspace/ct-Bot/include/fifo.h:80: error: `data' undeclared (first use in this function)
E:/ctbot/workspace/ct-Bot/include/fifo.h: At top level:
E:/ctbot/workspace/ct-Bot/include/fifo.h:99: error: syntax error before '*' token E:/ctbot/workspace/ct-Bot/include/fifo.h:99: warning: function declaration isn't a prototype E:/ctbot/workspace/ct-Bot/include/fifo.h: In function `_inline_fifo_get': E:/ctbot/workspace/ct-Bot/include/fifo.h:100: error: `f' undeclared (first use in this function)

Und hier für Debug-MCU-W32:
----------------------------------------
Building file: ../fifo.c
Invoking: GCC C Compiler
avr-gcc -DMCU -I"E:\ctbot\workspace\ct-Bot" -I"E:\ctbot\workspace\ct- Bot/include" -O0 -Os -g3 -Wall -c -fmessage-length=0 -mmcu=atmega32 - Wstrict-prototypes -MMD -MP -MF"fifo.d" -MT"fifo.d" -o"fifo.o" "../ fifo.c"
In file included from E:\ctbot\workspace\ct-Bot/include/fifo.h:33,
from ../fifo.c:28:
E:\ctbot\workspace\ct-Bot/include/os_thread.h:107: warning: 'OS_task' attribute directive ignored
In file included from ../fifo.c:28:
E:\ctbot\workspace\ct-Bot/include/fifo.h:43: error: expected specifier-qualifier-list before 'signal'
../fifo.c: In function 'fifo_init':
../fifo.c:51: error: 'fifo_t' has no member named 'signal'
../fifo.c: In function 'fifo_put_data':
../fifo.c:135: error: 'fifo_t' has no member named 'signal'
../fifo.c: In function 'fifo_get_data':
../fifo.c:153: error: 'fifo_t' has no member named 'signal'
../fifo.c:154: error: 'fifo_t' has no member named 'signal'
../fifo.c:156: error: 'fifo_t' has no member named 'signal'
make: *** [fifo.o] Error 1

-------------------
Es scheint in meinem Setup ein Problem mit dem folgenden Datentype auf der letzten oder zweitletzten Zeile zu geben:
/*! FIFO-Datentyp */typedef
uint8_t struct{volatilecount; /*!< # Zeichen im Puffer */uint8_t size; /*!< Puffer-Grosse */uint8_t * pread; /*!< Lesezeiger */ uint8_t * pwrite; /*!< Schreibzeiger */uint8_t read2end; /*!< # Zeichen bis zum Ueberlauf Lesezeiger */uint8_t write2end; /*!< # Zeichen bis zum Ueberlauf Schreibzeiger */signal os_signal_t; /*!< Signal das den Fifo-Status meldet */} fifo_t;

Muss ich den Type "signal" vorher noch deklarieren?

Vielen Dank

Fredi Ammann

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (Darwin)

iEYEARECAAYFAknbxLMACgkQDH/BX4067fJhnQCg8RA3JtOiG8r7gIWmB861jelS
BxAAoKorSuE6MSsui1KRJemzgBwjnwZ8
=wl/F
-----END PGP SIGNATURE-----