.\" the source, must acknowledge the copyright and authors of this work.
.\" %%%LICENSE_END
.\"
-.TH PLDD 1 2016-10-08 "GNU" "Linux User Manual"
+.TH PLDD 1 2019-08-02 "GNU" "Linux User Manual"
.SH NAME
pldd \- display dynamic shared objects linked into a process
.SH SYNOPSIS
.SH DESCRIPTION
The
.B pldd
-command displays a list of the dynamic shared objects that are
-linked into the process with the specified process ID.
+command displays a list of the dynamic shared objects (DSOs) that are
+linked into the process with the specified process ID (PID).
The list includes the libraries that have been dynamically loaded using
.BR dlopen (3).
.SH OPTIONS
.TP
.BR \-? ", " \-\-help
-Display program help message.
+Display a help message and exit.
.TP
-.BR \-\-usage
-Display a short usage message.
+.B \-\-usage
+Display a short usage message and exit.
.TP
.BR \-V ", " \-\-version
-Display the program version.
+Display program version information and exit.
.SH EXIT STATUS
On success,
.B pldd
have a similar command.
.SH NOTES
The command
-
- lsof \-p PID
-
+.PP
+.in +4n
+.EX
+lsof \-p PID
+.EE
+.in
+.PP
also shows output that includes the dynamic shared objects
that are linked into a process.
-
+.PP
The
.BR gdb (1)
.I "info shared"
command also shows the shared libraries being used by a process,
so that one can obtain similar output to
-.BR pldd
+.B pldd
using a command such as the following
(to monitor the process with the specified
.IR pid ):
+.PP
.in +4n
-.nf
-
-$ \fBgdb \-ex "set confirm off" \-ex "set height 0" \-ex "info shared" \\\fP
- \fB-ex "quit" \-p $pid | grep '^0x.*0x'\fP
-.fi
+.EX
+$ \fBgdb \-ex "set confirm off" \-ex "set height 0" \-ex "info shared" \e\fP
+ \fB\-ex "quit" \-p $pid | grep '^0x.*0x'\fP
+.EE
.in
.SH BUGS
-Since glibc 2.19,
+From glibc 2.19 to 2.29,
.B pldd
-is broken: it just hangs when executed.
-.\" FIXME . https://sourceware.org/bugzilla/show_bug.cgi?id=18035
-It is unclear if it will ever be fixed.
+was broken: it just hung when executed.
+.\" glibc commit 1a4c27355e146b6d8cc6487b998462c7fdd1048f
+This problem was fixed in glibc 2.30, and the fix has been backported
+to earlier glibc versions in some distributions.
.SH EXAMPLE
-.nf
+.EX
$ \fBecho $$\fP # Display PID of shell
1143
$ \fBpldd $$\fP # Display DSOs linked into the shell
-1143: /usr/bin/bash
+1143: /usr/bin/bash
linux\-vdso.so.1
/lib64/libtinfo.so.5
/lib64/libdl.so.2
/lib64/libc.so.6
/lib64/ld\-linux\-x86\-64.so.2
/lib64/libnss_files.so.2
-.fi
+.EE
.SH SEE ALSO
.BR ldd (1),
.BR lsof (1),