HPlogo HP-UX Reference Volume 1 of 5 > l

ldd(1)

» 

Technical documentation

Complete book in PDF

 » Table of Contents

 » Index

NAME

ldd — list dynamic dependencies of executable files or shared libraries

SYNOPSIS

ldd [-d] [-r] [-s] [-v] filename...

DESCRIPTION

ldd is a command that can list the dynamic dependencies of incomplete executable files or shared libraries. ldd command will work only on 64-bit executables or shared libraries.

ldd lists verbose information about dynamic dependencies and symbol references. If the object file is an executable file, ldd will list all shared libraries that would be loaded as a result of executing the file. If it is a shared library, ldd will list all shared libraries that would be loaded as a result of loading the library.

ldd uses the same algorithm as the dynamic loader /usr/lib/pa20_64/dld.sl to locate the shared libraries.

Options

ldd recognizes the following options:

-d

Check reference to data symbols.

-r

Check reference to data and code symbols.

-s

Displays the search path used to locate the shared libraries.

-v

Display all dependency relationships.

EXTERNAL INFLUENCES

Environment Variables

The following internationalization variables affect the execution of ldd:

LANG

Determines the locale category for native language, local customs and coded character set in the absence of LC_ALL and other LC_* environment variables. If LANG is not specified or is set to the empty string, a default of C (see lang(5)) is used instead of LANG.

LC_ALL

Determines the values for all locale categories and has precedence over LANG and other LC_* environment variables.

LC_MESSAGES

Determines the locale that should be used to affect the format and contents of diagnostic messages written to standard error.

LC_NUMERIC

Determines the locale category for numeric formatting.

LC_CTYPE

Determines the locale category for character handling functions.

NLSPATH

Determines the location of message catalogs for the processing of LC_MESSAGES.

If any internationalization variable contains an invalid setting, ldd behaves as if all internationalization variables are set to C. See environ(5).

DIAGNOSTICS

ldd prints the record of shared library path names to stdout. The optional list of symbol resolution problems are printed to stderr.

ldd returns zero when the operation is successful. A non-zero return code indicates that an error occurred.

EXAMPLES

By default ldd will print a simple dynamic path information. This consists of the dependencies recorded in the executable (or the shared library) followed by the physical location where these libraries are found.

ldd a.out ./libx.sl => ./libx.sl libc.2 => /lib/pa20_64/libc.2 libdl.1 => /lib/pa20_64/libdl.1

The -v option will cause ldd to print dependency relationship along with the dynamic path information.

ldd -v a.out find library=./libx.sl; required by a.out ./libx.sl => ./libx.sl find library=libc.2; required by a.out libc.2 => /lib/pa20_64/libc.2 find library=libdl.1; required by /lib/pa20_64/libc.2 libdl.1 => /lib/pa20_64/libdl.1

The -r option to ldd causes it to analyze all symbol references and print information about unsatisfied code and data symbols.

ldd -r a.out ./libx.sl => ./libx.sl libc.2 => /lib/pa20_64/libc.2 libdl.1 => /lib/pa20_64/libdl.1 symbol not found: val1 (./libx.sl) symbol not found: count (./libx.sl) symbol not found: func1 (./libx.sl)

WARNINGS

ldd does not list shared libraries explicitly loaded using dlopen(3X) or shl_load(3X).

FILES

a.out

output file

/usr/lib/pa20_64/dld.sl

64-bit PARISC dynamic loader

/usr/ccs/lib/pa20_64/lddstub

Dummy executable loaded to check the dependencies of shared libraries.

/usr/lib/nls/$LANG/ldd.cat

message catalog

SEE ALSO

System Tools:

ld(1)

invoke the link editor

Miscellaneous:

a.out(4)

assembler, compiler, and linker output

dld.sl(5)

dynamic loader

Texts and Tutorials:

HP-UX Linker and Libraries User's Guide

© Hewlett-Packard Development Company, L.P.