Using the DT_RPATH dynamic section attribute of the binary if present and DT_RUNPATH attribute does not exist.
o
Using the environment variable LD_LIBRARY_PATH . Except if the executable is a setuid/setgid binary, in which case it is ignored.
o
Using the DT_RUNPATH dynamic section attribute of the binary if present.
o
From the cache file /etc/ld.so.cache which contains a compiled list of candidate libraries previously found in the augmented library path. If, however, the binary was linked with -z nodeflib linker option, libraries in the default library paths are skipped.
o
In the default path /lib, and then /usr/lib. If the binary was linked with -z nodeflib linker option, this step is skipped.
A colon-separated list of directories in which to search for ELF libraries at execution-time. Similar to the PATH environment variable.
LD_PRELOAD
A whitespace-separated list of additional, user-specified, ELF shared libraries to be loaded before all others. This can be used to selectively override functions in other shared libraries. For setuid/setgid ELF binaries, only libraries in the standard search directories that are also setuid will be loaded.
LD_TRACE_LOADED_OBJECTS
If set to non-empty string, causes the program to list its dynamic library dependencies, as if run by ldd, instead of running normally.
LD_BIND_NOW
If set to non-empty string, causes the dynamic linker to resolve all symbols at program startup instead of deferring function call resolval to the point when they are first referenced.
LD_WARN
If set to non-empty string, warn about unresolved symbols.
LD_DEBUG
Output verbose debugging information about the dynamic linker. If set to all prints all debugging information it has, if set to help prints a help message about which categories can be specified in this environment variable.
LD_DEBUG_OUTPUT
File where LD_DEBUG output should be fed into, default is standard output. LD_DEBUG_OUTPUT is ignored for setuid/setgid binaries.
LD_VERBOSE
If set to non-empty string, output symbol versioning information about the program if querying information about the program (ie. either LD_TRACE_LOADED_OBJECTS has been set, or --list or --verify options have been given to the dynamic linker).
File containing a compiled list of directories in which to search for libraries and an ordered list of candidate libraries.
/etc/ld.so.preload
File containing a whitespace separated list of ELF shared libraries to be loaded before the program. libraries and an ordered list of candidate libraries.