92 Chapter 3
Linker Tasks
Using 64-bit Mode Linker Options
This default may change in future releases.
When you use +std, the linker:
Assumes -dynamic was passed to ld. The linker looks for shared
libraries first. The output executable is a shared executable.
All dependent shared libraries are output in the dynamic table in a
DT_NEEDED entry. These dependent shared libraries are recorded as
standard mode shared libraries.
ld +b and +s ordering is ignored. ld +s is on by default.
If an error occurs during the link, the linker does not generate an
a.out file.
Uses de facto standard internal name processing for dependent
shared libraries.
Uses embedded RPATHs at link time to find dependent shared
libraries.
If you do not specify ld +b, the linker uses a default RPATH consisting
of the -L directories, LPATH, and the default directories
/usr/lib/pa20_64:/usr/ccs/lib/pa20_64.
At runtime, the dynamic loader does a 64-bit-style load for all standard
mode dependent shared libraries. The dynamic loader:
Does dynamic path searching only for standard-mode shared libraries
in the DT_NEEDED entry of the dynamic table which do not contain a
path. For those standard-mode dynamic libraries that contain paths,
dld looks for the library as specified.
Looks for the shared library as specified in the DT_NEEDED dynamic
table entry if it contains a path.
Looks atLD_LIBRARY_PATH and SHLIB_PATH environment variables
at runtime by default when doing dynamic path searching for
standard-mode shared libraries.
Does not allow RPATH inheritance from ancestors to children (only
allowed from parent to child).
Does a breadth-first search for all standard-mode dependent shared
libraries.