4.5.3. Automatic dynamic symbol table rules in the BPABI DLL-like model

This section describes the symbol table rules for executables and DLLs.

Executable

An undefined symbol reference is an undefined symbol error.

Global symbols with STV_HIDDEN or STV_INTERNAL visibility are never exported to the dynamic symbol table.

Global symbols with STV_PROTECTED or STV_DEFAULT visibility are not exported to the dynamic symbol table unless --export_all is set. See --export_all, --no_export_all for more information.

DLL

An undefined symbol reference is an undefined symbol error.

Global symbols with STV_HIDDEN or STV_INTERNAL visibility are never exported to the dynamic symbol table.

Note

STV_HIDDEN or STV_INTERNAL global symbols that are required for relocation can be placed in the dynamic symbol table, however the linker changes them into local symbols to prevent them from being accessed from outside the shared library.

Global symbols with STV_PROTECTED or STV_DEFAULT visibility are always exported to the dynamic symbol table.

Copyright © 2008-2010 ARM. All rights reserved.ARM DUI 0381B
Non-ConfidentialIDID101213