From 282d267078dfa945ba309039799189ce4b87d6f1 Mon Sep 17 00:00:00 2001 From: jdp Date: Fri, 17 Jan 1997 20:22:18 +0000 Subject: Pay attention to the environment variable "LD_IGNORE_MISSING_OBJECTS". If it is set to a nonempty string, then simply skip any missing shared libraries. This came up in a discussion long ago as a potentially useful feature at sysinstall time. For example, an X11 utility could be used without the X libraries being present, provided the utility had a mode in which no X functions were actually called. --- libexec/rtld-elf/rtld.1 | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) (limited to 'libexec/rtld-elf') diff --git a/libexec/rtld-elf/rtld.1 b/libexec/rtld-elf/rtld.1 index 35d1c88..a3734f9 100644 --- a/libexec/rtld-elf/rtld.1 +++ b/libexec/rtld-elf/rtld.1 @@ -106,7 +106,7 @@ library-name, major-version-number, minor-version-number recognises a number of environment variables that can be used to modify its behaviour as follows: .Pp -.Bl -tag -width "LD_TRACE_LOADED_OBJECTS_PROGNAME" +.Bl -tag -width "LD_IGNORE_MISSING_OBJECTS" .It Ev LD_LIBRARY_PATH A colon separated list of directories, overriding the default search path for shared libraries. @@ -134,6 +134,30 @@ object. This is usually indicative of an incorrectly built library. When set to a nonempty string, no warning messages of any kind are issued. Normally, a warning is given if satisfactorily versioned library could not be found. +.It Ev LD_IGNORE_MISSING_OBJECTS +When set to a nonempty string, makes it a nonfatal condition if +one or more required shared objects cannot be loaded. +Loading and execution proceeds using the objects that are +available. +A warning is produced for each missing object, unless the environment +variable +.Ev LD_SUPPRESS_WARNINGS +is set to a nonempty string. +.Pp +This is ignored for set-user-ID and set-group-ID programs. +.Pp +Missing shared objects can be ignored without errors if all the +following conditions hold: +.Bl -bullet +.It +They do not supply definitions for any required data symbols. +.It +No functions defined by them are called during program execution. +.It +The environment variable +.Ev LD_BIND_NOW +is unset or is set to the empty string. +.El .It Ev LD_TRACE_LOADED_OBJECTS When set to a nonempty string, causes .Nm -- cgit v1.1