]> git.ipfire.org Git - thirdparty/man-pages.git/blob - man1/pldd.1
e0fa32b6eb16902334d58ebf3113b03cb412ea91
[thirdparty/man-pages.git] / man1 / pldd.1
1 .\" Copyright (C) 2014 Michael Kerrisk <mtk.manpages@gmail.com>
2 .\"
3 .\" SPDX-License-Identifier: Linux-man-pages-copyleft
4 .\"
5 .TH pldd 1 (date) "Linux man-pages (unreleased)"
6 .SH NAME
7 pldd \- display dynamic shared objects linked into a process
8 .SH SYNOPSIS
9 .nf
10 .BI "pldd " "pid"
11 .BI pldd " option"
12 .fi
13 .SH DESCRIPTION
14 The
15 .B pldd
16 command displays a list of the dynamic shared objects (DSOs) that are
17 linked into the process with the specified process ID (PID).
18 The list includes the libraries that have been dynamically loaded using
19 .BR dlopen (3).
20 .SH OPTIONS
21 .TP
22 .B \-\-help
23 .TQ
24 .B \-?
25 Display a help message and exit.
26 .TP
27 .B \-\-usage
28 Display a short usage message and exit.
29 .TP
30 .B \-\-version
31 .TQ
32 .B \-V
33 Display program version information and exit.
34 .SH EXIT STATUS
35 On success,
36 .B pldd
37 exits with the status 0.
38 If the specified process does not exist,
39 the user does not have permission to access
40 its dynamic shared object list,
41 or no command-line arguments are supplied,
42 .B pldd
43 exists with a status of 1.
44 If given an invalid option, it exits with the status 64.
45 .SH VERSIONS
46 Some other systems
47 .\" There are man pages on Solaris and HP-UX.
48 have a similar command.
49 .SH STANDARDS
50 None.
51 .SH HISTORY
52 glibc 2.15.
53 .SH NOTES
54 The command
55 .P
56 .in +4n
57 .EX
58 lsof \-p PID
59 .EE
60 .in
61 .P
62 also shows output that includes the dynamic shared objects
63 that are linked into a process.
64 .P
65 The
66 .BR gdb (1)
67 .I "info shared"
68 command also shows the shared libraries being used by a process,
69 so that one can obtain similar output to
70 .B pldd
71 using a command such as the following
72 (to monitor the process with the specified
73 .IR pid ):
74 .P
75 .in +4n
76 .EX
77 $ \fBgdb \-ex "set confirm off" \-ex "set height 0" \-ex "info shared" \e\fP
78 \fB\-ex "quit" \-p $pid | grep \[aq]\[ha]0x.*0x\[aq]\fP
79 .EE
80 .in
81 .SH BUGS
82 From glibc 2.19 to glibc 2.29,
83 .B pldd
84 was broken: it just hung when executed.
85 .\" glibc commit 1a4c27355e146b6d8cc6487b998462c7fdd1048f
86 This problem was fixed in glibc 2.30, and the fix has been backported
87 to earlier glibc versions in some distributions.
88 .SH EXAMPLES
89 .EX
90 $ \fBecho $$\fP # Display PID of shell
91 1143
92 $ \fBpldd $$\fP # Display DSOs linked into the shell
93 1143: /usr/bin/bash
94 linux\-vdso.so.1
95 /lib64/libtinfo.so.5
96 /lib64/libdl.so.2
97 /lib64/libc.so.6
98 /lib64/ld\-linux\-x86\-64.so.2
99 /lib64/libnss_files.so.2
100 .EE
101 .SH SEE ALSO
102 .BR ldd (1),
103 .BR lsof (1),
104 .BR dlopen (3),
105 .BR ld.so (8)