aarc240 wrote on Monday, June 23, 2008:
Anyone care to comment on what the original intent was here?
In file included from … /Source/include/FreeRTOS.h:66,
from main.c:10:
… /Source/include/portable.h:252: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
252: portSTACK_TYPE *pxPortInitialiseStack( portSTACK_TYPE *pxTopOfStack, pdTASK_CODE pxCode, void *pvParameters );
… /Source/include/portable.h:265: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘xPortStartScheduler’
265: portBASE_TYPE xPortStartScheduler( void );
In file included from main.c:10:
… /Source/include/FreeRTOS.h:71: error: expected declaration specifiers or ‘…’ before ‘*’ token
… /Source/include/FreeRTOS.h:71: warning: type defaults to ‘int’ in declaration of ‘portBASE_TYPE’
… /Source/include/FreeRTOS.h:71: error: ‘portBASE_TYPE’ declared as function returning a function
71: typedef portBASE_TYPE (*pdTASK_HOOK_CODE)( void * );
The files in question all come from FreeRTOS v5.0.2, processor type AVRMega323, originally for WinAVR GCC.
New environment is Ubuntu Linux v8.04 latest stable, gcc-avr v 1:4.2.2-1, built on Code::Blocks v8.02 IDE.
Include directories are defined in Code::Blocks, not the makefile (which gets ignored / over-ridden by the IDE).
btw, no attempt has been made to use the distribution directory structure - it’s just too messy!