HI..
I am developing STM32F401 based on emos and emwin.
However, I had some problems compiling. The problem is a link error.
Even though the corresponding function required by the emwin library is defined, during the compile link, the compiler throws an error saying that the definition part of the function can not be found.
I can not understand.
Certain functions are defined in other C files, and this function is normally called from another function.
The error in the compiler is as follows.
Error[Li005]: no definition for "LCD_L0_Init()" [referenced from LCD.o(Emwin.a)]
Error[Li005]: no definition for "LCD_L0_On()" [referenced from LCD.o(Emwin.a)]
Error[Li005]: no definition for "LCD_L0_FillRect(int, int, int, int)" [referenced from LCD.o(Emwin.a)]
Error[Li005]: no definition for "LCD_L0_SetLUTEntry(unsigned char, unsigned long)" [referenced from LCDColor.o(Emwin.a)]
Error[Li005]: no definition for "LCD_L0_DrawBitmap(int, int, int, int, int, int, unsigned char const *, int, unsigned char const *)" [referenced from LCD.o(Emwin.a)]
However, I have clearly defined the function below and it is not blocked by #IF.
/*********************************************************************
*
* LCD_L0_Init
*/
int LCD_L0_Init(void)
{
LCD_L0_ReInit();
/* Init cache only one time */
#if LCD_SUPPORT_CACHECONTROL
_CacheStat =0; /* 0: No changes */
_CacheLocked =0; /* 0: Not locked */
#endif
ZEROINIT(_aCache);
#if LCD_CACHE
memset(_aCacheDirty,1, sizeof(_aCacheDirty));
#endif
#if LCD_CACHE
_FlushCache();
#endif
return 0; /* Init successfull ! */
}
And I get a link error in embOS .
Error[Li005]: no definition for "OS_CreateTask_R" [referenced from C:\Nowwork\ST_GUI\EWARM\DC_OCR\Obj\main.o]
I want to know where OS_CreateTask_R is defined.
Thank you first for your answers.
I am developing STM32F401 based on emos and emwin.
However, I had some problems compiling. The problem is a link error.
Even though the corresponding function required by the emwin library is defined, during the compile link, the compiler throws an error saying that the definition part of the function can not be found.
I can not understand.
Certain functions are defined in other C files, and this function is normally called from another function.
The error in the compiler is as follows.
Error[Li005]: no definition for "LCD_L0_Init()" [referenced from LCD.o(Emwin.a)]
Error[Li005]: no definition for "LCD_L0_On()" [referenced from LCD.o(Emwin.a)]
Error[Li005]: no definition for "LCD_L0_FillRect(int, int, int, int)" [referenced from LCD.o(Emwin.a)]
Error[Li005]: no definition for "LCD_L0_SetLUTEntry(unsigned char, unsigned long)" [referenced from LCDColor.o(Emwin.a)]
Error[Li005]: no definition for "LCD_L0_DrawBitmap(int, int, int, int, int, int, unsigned char const *, int, unsigned char const *)" [referenced from LCD.o(Emwin.a)]
However, I have clearly defined the function below and it is not blocked by #IF.
/*********************************************************************
*
* LCD_L0_Init
*/
int LCD_L0_Init(void)
{
LCD_L0_ReInit();
/* Init cache only one time */
#if LCD_SUPPORT_CACHECONTROL
_CacheStat =0; /* 0: No changes */
_CacheLocked =0; /* 0: Not locked */
#endif
ZEROINIT(_aCache);
#if LCD_CACHE
memset(_aCacheDirty,1, sizeof(_aCacheDirty));
#endif
#if LCD_CACHE
_FlushCache();
#endif
return 0; /* Init successfull ! */
}
And I get a link error in embOS .
Error[Li005]: no definition for "OS_CreateTask_R" [referenced from C:\Nowwork\ST_GUI\EWARM\DC_OCR\Obj\main.o]
I want to know where OS_CreateTask_R is defined.
Thank you first for your answers.