elfdeps(1) — Linux manual page

NAME | SYNOPSIS | DESCRIPTION | OPERATIONS | ARGUMENTS | OPTIONS | OUTPUT | EXIT STATUS | EXAMPLES | SEE ALSO | COLOPHON

ELFDEPS(1)               General Commands Manual               ELFDEPS(1)

NAME         top

       elfdeps - Dependency generator for ELF binaries

SYNOPSIS         top

       elfdeps <operation> [options]

       elfdeps <operation> [options] [FILE] ...

DESCRIPTION         top

       elfdeps is a dependency generator for ELF executables and dynamic
       shared object (DSO) files. The filenames can be received on the
       standard input (when used as a generator), or command line
       arguments for testing convenience.

       elfdeps encodes information stored in ELF files into a format
       suitable for use in RPM dependencies. The main interest areas are
       DT_SONAME, DT_NEEDED fields of the SHT_DYNAMIC section, and symbol
       versioning information in the SHT_GNU_verdef and SHT_GNU_verneed
       sections.

       elfdeps is not normally invoked directly, but doing so can be
       useful for troubleshooting dependency generation and developing
       new dependency generators. The installation directory of elfdeps
       can be determined with rpm -E "%{_rpmconfigdir}".

       This man page describes the options specific to this generator,
       see rpm-dependency-generators(7) for information about the overall
       mechanism.

OPERATIONS         top

       -P, --provides,
           Print the provides dependencies.

       -R, --requires
           Print the requires dependencies.

ARGUMENTS         top

       FILE
           An ELF file. Other file types are silently ignored.

OPTIONS         top

       --no-fake-soname
           Do not emit a fake soname for DSOs that don't set DT_SONAME.
           By default, elfdeps generates a soname from the filename for
           DSOs that do not have one. Only effective when printing
           provides dependencies.

       --no-filter-soname
           Do not filter sonames. By default, elfdeps does some sanity
           checking to filter out redundant and/or invalid soname
           entries. Only effective when printing provides dependencies.

       -m, --multifile
           Use multifile protocol for output. See
           rpm-dependency-generators(7).

       --require-interp
           Emit a requires dependency for the ELF interpreter
           (PT_INTERP), if there is one. Only effective when printing
           requires dependencies.

       --soname-only
           Emit only the soname (DT_SONAME) of a DSO, omitting any symbol
           versioning information. Only effective when printing provides
           dependencies.

OUTPUT         top

       See Protocols in rpm-dependency-generators(7). By default,
       singlefile protocol is used, but the multifile protocol can be
       enabled with the --multifile option.

EXIT STATUS         top

       On success, 0 is returned, a non-zero failure code otherwise.

EXAMPLES         top

       elfdeps --requires /bin/ls
           Print ELF-level requires dependencies of the /bin/ls
           executable.

       find mylib-1.0-build/BUILDROOT --name "*.so*" | elfdeps -P
       --multifile
           Print ELF-level provides dependencies of all shared libraries
           inside the mylib-1.0-build/BUILDROOT directory, using the
           multifile generator protocol.

SEE ALSO         top

       rpmbuild(1) rpm-dependency-generator(7) elf(5) readelf(1)

       http://www.rpm.org/ 

COLOPHON         top

       This page is part of the rpm (RPM Package Manager) project.
       Information about the project can be found at 
       ⟨https://github.com/rpm-software-management/rpm⟩.  It is not known
       how to report bugs for this man page; if you know, please send a
       mail to [email protected].  This page was obtained from the
       project's upstream Git repository
       ⟨https://github.com/rpm-software-management/rpm.git⟩ on
       2026-01-16.  (At that time, the date of the most recent commit
       that was found in the repository was 2026-01-15.)  If you discover
       any rendering problems in this HTML version of the page, or you
       believe there is a better or more up-to-date source for the page,
       or you have corrections or improvements to the information in this
       COLOPHON (which is not part of the original manual page), send a
       mail to [email protected]

RPM 6.0.90                      2026-01-16                     ELFDEPS(1)