| |||
| Home > BPABI and SysV Shared Libraries and Executables > Using bare metal and DLL-like models > Automatic dynamic symbol table rules in the BPABI DLL-like model | |||
This section describes the symbol table rules for executables and DLLs.
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.
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.
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.