The ldd utility displays all shared objects that are needed to run the given program or to load the given shared object. Contrary to nm(1), the list includes "indirect" dependencies that are the result of needed shared objects which themselves depend on yet other shared objects.
Zero, one or two -f options may be given. The argument is a format string passed to rtld(1) and allows customization of s output. See rtld(1) for a list of recognized conversion characters.
The -a option displays the list of all objects that are needed by each loaded object. This option does not work with a.out(5) binaries.
The -v option displays a verbose listing of the dynamic linking headers encoded in the executable. See the source code and include files for the definitive meaning of all the fields.
ld(1), nm(1), rtld(1)