tail head cat sleep
QR code linking to this page

Manual Pages  — LDD

NAME

ldd – list dynamic object dependencies

CONTENTS

SYNOPSIS


ldd [-a] [-v] [-f format] program ...

DESCRIPTION

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 Ns output. If one is given, it sets LD_TRACE_LOADED_OBJECTS_FMT1. If two are given, they set LD_TRACE_LOADED_OBJECTS_FMT1 and LD_TRACE_LOADED_OBJECTS_FMT2, respectively. See rtld(1) for details, including 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.

IMPLEMENTATION NOTES

ldd lists the dependencies of an executable by setting rtld(1) environment variables and running the executable in a child process. If the executable is corrupt or invalid, ldd may therefore fail without providing any diagnostic error messages.

EXAMPLES

The following is an example of a shell pipeline which uses the -f option. It will print a report of all ELF binaries in the current directory, which link against libc.so.6:

    find . -type f | xargs -n1 file -F ' ' | grep 'ELF.*dynamically' | cut -f1 -d' ' | xargs ldd -f '%A %o\n' | grep libc.so.6

SEE ALSO

ld(1), nm(1), readelf(1), rtld(1)

HISTORY

A ldd utility first appeared in SunOS 4.0, it appeared in its current form in FreeBSD 1.1 .

The -v support is based on code written by John Polstra <Mt jdp@polstra.com>


LDD (1) October 23, 2018

tail head cat sleep
QR code linking to this page


Please direct any comments about this manual page service to Ben Bullock. Privacy policy.

C isn't that hard: void (*(*f[])())() defines f as an array of unspecified size, of pointers to functions that return pointers to functions that return void