This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

UNRESOLVED EXTERNAL SYMBOL, but why?

Hello,

I've got a small problem with the L166. In my project I have several C-files which use functions of osBoard.c. The functions are declared in osBoard.h.

osBoard.h:

void saveContext(void);
void restoreContext(void);
void saveStatus(void);
void restoreStatus(void);
CPU_BIT getStatus(void);
void setStatus(CPU_BIT statusregister);
void setIEN(INT8U ien);
INT8U getIEN(void);
void enableInterrupts(void);
void dissableInterrupts(void);
void setSP(CPU_BIT);
CPU_BIT  getSP(void);
void setInterruptLevel(INT8U ilvl);
INT8U getInterruptLevel(void);

I include the osBoard.h in every file which uses one of the functions (osSchedule, osSystem, ...). When Keil wants to link it throws a lot of errors and warnings.


linking...
*** ERROR L127: UNRESOLVED EXTERNAL SYMBOL
SYMBOL: getIEN
MODULE: .\obj\osSchedule.obj (OSSCHEDULE)

.... // same with all other functions

*** ERROR L128: REFERENCE MADE TO UNRESOLVED EXTERNAL
SYMBOL: getIEN
MODULE: .\obj\osSchedule.obj (OSSCHEDULE)

.... // same with all other functions

*** ERROR L127: UNRESOLVED EXTERNAL SYMBOL
SYMBOL: getIEN
MODULE: .\obj\osSystem.obj (OSSYSTEM)

.... // same with all other functions

*** ERROR L128: REFERENCE MADE TO UNRESOLVED EXTERNAL
SYMBOL: getIEN
MODULE: .\obj\osSystem.obj (OSSYSTEM)
ADDRESS: 1456H

.... // same with all other functions
Program Size: data=2932(near=2932) const=847(near=635) code=4842
Target not created


What did I do wrong because I use the same Source for another target and everything works there fine.

Thanks
Norbert

0