Keil Logo

LX51: LINKER ERRORS WHEN USING FAR MEMORY


Information in this article applies to:

  • C51 Version 7
  • LX51 Version 3.65

QUESTION

I am using the far memory type in my application and I have manually added the run-time libraries. Now, I am getting several strange error messages during the link run.

For example:

*** ERROR L127: UNRESOLVED EXTERNAL SYMBOL
    SYMBOL:  ?C?ISTOPTR

Other symbol errors refer to: ?C?CSTOPTR, ?C?CLDOPTR, ?C?ISTOPTR, ?C?ILDOPTR, ?C?PSTOPTR, ?C?PLDOPTR, ?C?LSTOPTR, and ?C?LLDOPTR.

There are also errors to the symbols ?C?CSTXPTR, ?C?CLDXPTR, ?C?ISTXPTR, ?C?ILDXPTR, ?C?PSTXPTR, ?C?PLDXPTR, ?C?LSTXPTR, and ?C?LLDXPTR.

What can be wrong?

ANSWER

For far memory type it is not enough to add just the run-time libraries. The following other settings are required:

  1. Enable the VARBANKING compiler directive.
  2. Add the configuration file XBANKING.A51 or L51_BANK.A51 that contains correct configurations of the ?C?xSTXPTR and ?C?xLDXPTR access routines. Note that there are core-specific variants of the L51_BANK.A51 file, for example the L51IBANK.A51 for the Mentor M8051EW core.

MORE INFORMATION

SEE ALSO

FORUM THREADS

The following Discussion Forum threads may provide information related to this topic.

Last Reviewed: Friday, July 15, 2005


Did this article provide the answer you needed?
 
Yes
No
Not Sure
 
  Arm logo
Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.

Change Settings

Privacy Policy Update

Arm’s Privacy Policy has been updated. By continuing to use our site, you consent to Arm’s Privacy Policy. Please review our Privacy Policy to learn more about our collection, use and transfers
of your data.