drm/radeon: Partial sync with Linux 3.18
[dragonfly.git] / usr.bin / ldd / ldd.1
blobb9a6bd802494a9c23ebe224af079670157af4bad
1 .\" $FreeBSD: head/usr.bin/ldd/ldd.1 199871 2009-11-28 11:05:22Z danger $
2 .\"
3 .Dd February 28, 2016
4 .Dt LDD 1
5 .Os
6 .Sh NAME
7 .Nm ldd
8 .Nd list dynamic object dependencies
9 .Sh SYNOPSIS
10 .Nm
11 .Op Fl a
12 .Op Fl v
13 .Op Fl f Ar format
14 .Ar program ...
15 .Sh DESCRIPTION
16 The
17 .Nm
18 utility displays all shared objects that are needed to run the given program or
19 to load the given shared object.
20 Contrary to
21 .Xr nm 1 ,
22 the list includes
23 .Dq indirect
24 dependencies that are the result of needed shared objects which themselves
25 depend on yet other shared objects.
26 .Pp
27 Zero, one or two
28 .Fl f
29 options may be given.
30 The argument is a format string passed to
31 .Xr rtld 1
32 and allows customization of
33 .Nm Ns 's
34 output.
35 If one is given, it sets
36 .Ev LD_TRACE_LOADED_OBJECTS_FMT1 .
37 If two are given, they set
38 .Ev LD_TRACE_LOADED_OBJECTS_FMT1
39 and
40 .Ev LD_TRACE_LOADED_OBJECTS_FMT2 ,
41 respectively.
42 See
43 .Xr rtld 1
44 for details, including a list of recognized conversion characters.
45 .Pp
46 The
47 .Fl a
48 option displays the list of all objects that are needed by each loaded
49 object.
50 .Pp
51 The
52 .Fl v
53 option is left for compatibility and has no effect.
54 .Sh EXAMPLES
55 The following is an example of a shell pipeline which uses the
56 .Fl f
57 option.
58 It will print a report of all ELF binaries in the current directory,
59 which link against libc.so.6:
60 .Pp
61 .Dl "find . -type f | xargs -n1 file -F ' ' | grep ELF | cut -f1 -d' ' | xargs ldd -f '%A %o\en' | grep libc.so.6"
62 .Sh SEE ALSO
63 .Xr ld 1 ,
64 .Xr nm 1 ,
65 .Xr rtld 1
66 .Sh HISTORY
68 .Nm
69 utility first appeared in SunOS 4.0, it appeared in its current form in
70 .Fx 1.1 .