06.02.2013 Views

ARM Compiler toolchain Using the Linker - ARM Information Center

ARM Compiler toolchain Using the Linker - ARM Information Center

ARM Compiler toolchain Using the Linker - ARM Information Center

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

BPABI and SysV shared libraries and executables<br />

10.20 Automatic dynamic symbol table rules in <strong>the</strong> BPABI DLL-like model<br />

10.20.1 See also<br />

The following rules apply to <strong>the</strong> Base Platform Application Binary Interface (BPABI) DLL-like<br />

model:<br />

Executable An undefined symbol reference is an undefined symbol error.<br />

Global symbols with STV_HIDDEN or STV_INTERNAL visibility are never exported to<br />

<strong>the</strong> dynamic symbol table.<br />

Global symbols with STV_PROTECTED or STV_DEFAULT visibility are not exported to<br />

<strong>the</strong> dynamic symbol table unless --export_all or --export_dynamic is set.<br />

DLL An undefined symbol reference is an undefined symbol error.<br />

Global symbols with STV_HIDDEN or STV_INTERNAL visibility are never exported to<br />

<strong>the</strong> dynamic symbol table.<br />

Note<br />

STV_HIDDEN or STV_INTERNAL global symbols that are required for relocation can be<br />

placed in <strong>the</strong> dynamic symbol table, however <strong>the</strong> linker changes <strong>the</strong>m into local<br />

symbols to prevent <strong>the</strong>m from being accessed from outside <strong>the</strong> shared library.<br />

Global symbols with STV_PROTECTED or STV_DEFAULT visibility are always exported<br />

to <strong>the</strong> dynamic symbol table.<br />

You can manually export and import symbols using <strong>the</strong> EXPORT and IMPORT steering file<br />

commands. Use <strong>the</strong> --edit command-line option to specify a steering file command.<br />

Concepts<br />

• What is a steering file? on page 7-23<br />

Reference<br />

• Steering file command summary on page 7-25<br />

• Steering file format on page 7-26.<br />

<strong>Linker</strong> Reference:<br />

• --edit=file_list on page 2-53<br />

• --export_all, --no_export_all on page 2-64<br />

• --export_dynamic, --no_export_dynamic on page 2-65<br />

• --keep_protected_symbols on page 2-91<br />

• EXPORT on page 3-2<br />

• IMPORT on page 3-4.<br />

<strong>ARM</strong> DUI 0474C Copyright © 2010-2011 <strong>ARM</strong>. All rights reserved. 10-24<br />

ID080411 Non-Confidential

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!