]> git.ipfire.org Git - thirdparty/man-pages.git/blobdiff - man1/pldd.1
pldd.1, bpf.2, chdir.2, clone.2, fanotify_init.2, fanotify_mark.2, intro.2, ipc.2...
[thirdparty/man-pages.git] / man1 / pldd.1
index 8a075e8add1a358b0f7be9b5a622497e4cee549d..5f6eddcb1cdb41c0aec8aaa2b7cbb42d58ccb404 100644 (file)
@@ -22,7 +22,7 @@
 .\" the source, must acknowledge the copyright and authors of this work.
 .\" %%%LICENSE_END
 .\"
-.TH PLDD 1 2014-09-27 "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
@@ -33,20 +33,31 @@ pldd \- display dynamic shared objects linked into a process
 .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
+exits with the status 0.
+If the specified process does not exist,
+the user does not have permission to access
+its dynamic shared object list,
+or no command-line arguments are supplied,
+.B pldd
+exists with a status of 1.
+If given an invalid option, it exits with the status 64.
 .SH VERSIONS
 .B pldd
 is available since glibc 2.15.
@@ -57,43 +68,54 @@ command is not specified by POSIX.1.
 Some other systems
 .\" There are man pages on Solaris and HP-UX.
 have a similar command.
-.SH EXIT STATUS
-On success,
+.SH NOTES
+The command
+.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
 .B pldd
-exits with the status 0.
-If the specified process does not exist,
-the user does not have permission to access
-its dynamic shared object list,
-or no command-line arguments are supplied,
+using a command such as the following
+(to monitor the process with the specified
+.IR pid ):
+.PP
+.in +4n
+.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
+From glibc 2.19 to 2.29,
 .B pldd
-exists with a status of 1.
-If given an invalid option, it exits with the status 64.
+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
-.SH NOTES
-The command
-
-     lsof -p PID
-
-also shows output that includes the dynamic shared objects
-that are linked into a process.
-.SH BUGS
-Since glibc 2.19,
-.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.
+.EE
 .SH SEE ALSO
 .BR ldd (1),
 .BR lsof (1),