]> rtime.felk.cvut.cz Git - l4.git/blob - l4/pkg/uclibc/lib/contrib/uclibc/ldso/man/ld.so.8
update
[l4.git] / l4 / pkg / uclibc / lib / contrib / uclibc / ldso / man / ld.so.8
1 .TH ld.so 8 "14 March 1998"
2 .SH NAME
3 ld.so/ld-linux.so \- dynamic linker/loader
4 .SH DESCRIPTION
5 .B ld.so
6 loads the shared libraries needed by a program, prepares the program
7 to run, and then runs it.
8 Unless explicitly specified via the
9 .B \-static
10 option to
11 .B ld
12 during compilation, all Linux programs are incomplete and require 
13 further linking at run time.
14 .PP
15 The necessary shared libraries needed by the program are searched for 
16 in the following order
17 .IP o
18 Using the environment variable
19 .B LD_LIBRARY_PATH
20 .RB ( LD_AOUT_LIBRARY_PATH
21 for a.out programs).
22 Except if the executable is a setuid/setgid binary, in which case it
23 is ignored.
24 .IP o
25 From the cache file
26 .BR /etc/ld.so.cache
27 which contains a compiled list of candidate libraries previously found
28 in the augmented library path.
29 .IP o
30 In the default path
31 .BR /usr/lib ,
32 and then
33 .BR /lib .
34 .SH ENVIRONMENT
35 .TP
36 .B LD_LIBRARY_PATH
37 A colon-separated list of directories in which to search for
38 ELF libraries at execution-time.
39 Similar to the 
40 .B PATH
41 environment variable.
42 .TP
43 .B LD_PRELOAD
44 A whitespace-separated list of additional, user-specified, ELF shared 
45 libraries to be loaded before all others.
46 This can be used to selectively override functions in other shared libraries.
47 For setuid/setgid ELF binaries, only libraries in the standard search
48 directories that are also setgid will be loaded.
49 .TP
50 .B LD_TRACE_LOADED_OBJECTS
51 If present, causes the program to list its dynamic library dependencies,
52 as if run by ldd, instead of running normally.
53 .TP
54 .B LD_BIND_NOW
55 If present, causes the dynamic linker to resolve all symbols at program
56 startup instead of when they are first referenced.
57 .TP
58 .B LD_AOUT_LIBRARY_PATH
59 A colon-separated list of directories in which to search for
60 a.out libraries at execution-time.
61 Similar to the 
62 .B PATH
63 environment variable.
64 .TP
65 .B LD_AOUT_PRELOAD
66 The name of an additional, user-specified, a.out shared library to be loaded 
67 after all others.
68 This can be used to selectively override functions in other shared libraries.
69 .TP
70 .B LD_NOWARN
71 Suppress warnings about a.out libraries with incompatible minor 
72 version numbers.
73 .TP
74 .B LD_KEEPDIR
75 Don't ignore the directory in the names of a.out libraries to be loaded.
76 Use of this option is strongly discouraged.
77 .SH FILES
78 .PD 0
79 .TP 20
80 .B /lib/ld.so
81 a.out dynamic linker/loader
82 .TP 20
83 .B /lib/ld-linux.so.*
84 ELF dynamic linker/loader
85 .TP
86 .B /etc/ld.so.cache
87 File containing a compiled list of directories in which to search for
88 libraries and an ordered list of candidate libraries.
89 .TP
90 .B /etc/ld.so.preload
91 File containing a whitespace separated list of ELF shared libraries to
92 be loaded before the program.
93 libraries and an ordered list of candidate libraries.
94 .TP
95 .B lib*.so*
96 shared libraries
97 .PD
98 .SH SEE ALSO
99 .BR ldd (1),
100 .BR ldconfig (8).
101 .SH BUGS
102 .LP
103 Currently
104 .B ld.so
105 has no means of unloading and searching for compatible or newer version of
106 libraries.
107 .PP
108 .B ld.so
109 functionality is only available for executables compiled using libc version
110 4.4.3 or greater.
111 .SH AUTHORS
112 David Engel, Eric Youngdale, Peter MacDonald, Hongjiu Lu, Linus
113 Torvalds, Lars Wirzenius and Mitch D'Souza (not necessarily in that order).