ARM Technical Support Knowledge Articles

ERROR L103 (EXTERNAL ATTRIBUT DO NOT MATCH PUBLIC)

Applies to: BL51 Code-banking Linker/Locator

Answer


Information in this article applies to:


SYMPTOMS

When I compile and link my program, I receive the following error message from the linker:

*** ERROR L103: EXTERNAL ATTRIBUT DO NOT MATCH PUBLIC
    SYMBOL:  JUNK_TBL
    MODULE:  myfile.obj (MYFILE)

I have a global variable declared as follows:

code BYTE const JUNK_tbl[]

and an external definition declared as follows:

extern const BYTE JUNK_tbl[]

CAUSE

The problem is that the variable is declared to reside in CODE memory and the external reference declares that the variable resides in the default variable space (which is DATA, PDATA, or XDATA).

RESOLUTION

Change your extern declaration to match the variable declaration. For example:

extern code BYTE const JUNK_tbl[]

MORE INFORMATION

Article last edited on: 2005-07-19 15:31:31

Rate this article

[Bad]
|
|
[Good]
Disagree? Move your mouse over the bar and click

Did you find this article helpful? Yes No

How can we improve this article?

Link to this article
Copyright © 2011 ARM Limited. All rights reserved. External (Open), Non-Confidential