In my .c file I have this structure:
Code: Select all
#define MAX_CMD_LEN 20
char commandCache[MAX_CMD_LEN];
void parse_virtjoule_cli( char *command )
{
// do some stuff
}
void build_cli_line( unsigned char rxData)
{
//....
parse_virtjoule_cli( commandCache );
}
Code: Select all
xmap: Error: Value of undefined resource symbol "parse_virtjoule_cli.nstackwords" cannot be determined.
xmap: Error: ...needed for function build_cli_line
xmap: Error: ...needed for function executive
xmap: Error: Symbol "parse_virtjoule_cli.nstackwords" for resolution of resource expression for ".LLNK154" is undefined.
xmap: Error: Symbol for resolution of resource expression for ".LLNK157" is undefined.
xmap: Error: Symbol for resolution of resource expression for ".LLNK128" is undefined.
xmap: Error: Symbol for resolution of resource expression for ".LLNK160" is undefined.
xmap: Error: Symbol for resolution of resource expression for ".LLNK135" is undefined.
xmap: Error: Symbol for resolution of resource expression for ".LLNK163" is undefined.
xmap: Error: Symbol for resolution of resource expression for ".LLNK139" is undefined.
xmap: Error: Symbol for resolution of resource expression for ".LLNK166" is undefined.
xmap: Error: Symbol for resolution of resource expression for ".LLNK143" is undefined.
xmap: Error: Symbol for resolution of resource expression for ".LLNK147" is undefined.
xmap: Error: Symbol for resolution of resource expression for ".LLNK148" is undefined.
If I comment out the one call and the function itself, it compiles and links fine so I know it's not being references elsewhere.
The method is declared before its use, so no externs should be involved at all.
This seems like a linker bug to me. How can I get around this problem? It's so basic but fails.
Landon