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