pldd - display dynamic shared objects linked into a process
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
- -?, --help
- Display a help message and exit.
- Display a short usage message and exit.
- -V, --version
- Display program version information and exit.
On success, 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, pldd
with a status of 1. If given an invalid option, it exits with the status 64.
is available since glibc 2.15.
command is not specified by POSIX.1. Some other systems have a
lsof -p PID
also shows output that includes the dynamic shared objects that are linked into
(1) info shared
command also shows the shared libraries
being used by a process, so that one can obtain similar output to pldd
using a command such as the following (to monitor the process with the
$ gdb -ex "set confirm off" -ex "set height 0" -ex "info shared" \
-ex "quit" -p $pid | grep '^0x.*0x'
From glibc 2.19 to 2.29, pldd
was broken: it just hung when executed.
This problem was fixed in glibc 2.30, and the fix has been backported to
earlier glibc versions in some distributions.
$ echo $$ # Display PID of shell
$ pldd $$ # Display DSOs linked into the shell