pldd man page

pldd — display dynamic shared objects linked into a process


pldd pid
pldd option


The pldd command displays a list of the dynamic shared objects that are linked into the process with the specified process ID. The list includes the libraries that have been dynamically loaded using dlopen(3).


-?, --help
Display program help message.
Display a short usage message.
-V, --version
Display the program version.

Exit Status

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 exists with a status of 1. If given an invalid option, it exits with the status 64.


pldd is available since glibc 2.15.

Conforming to

The pldd command is not specified by POSIX.1. Some other systems have a similar command.


The command

lsof -p PID

also shows output that includes the dynamic shared objects that are linked into a process.

The gdb(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 specified pid):

$ gdb -ex "set confirm off" -ex "set height 0" -ex "info shared" \
        -ex "quit" -p $pid | grep '^0x.*0x'


Since glibc 2.19, pldd is broken: it just hangs when executed. It is unclear if it will ever be fixed.


$ echo $$               # Display PID of shell
$ pldd $$               # Display DSOs linked into the shell
1143:	/usr/bin/bash

See Also

ldd(1), lsof(1), dlopen(3), ld.so(8)

Referenced By

dlopen(3), ldd(1), ld.so(8).

Explore man page connections for pldd(1).