|
NAME | SYNOPSIS | DESCRIPTION | OPERATIONS | ARGUMENTS | OPTIONS | OUTPUT | EXIT STATUS | EXAMPLES | SEE ALSO | COLOPHON |
|
|
|
ELFDEPS(1) General Commands Manual ELFDEPS(1)
elfdeps - Dependency generator for ELF binaries
elfdeps <operation> [options]
elfdeps <operation> [options] [FILE] ...
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.
-P, --provides,
Print the provides dependencies.
-R, --requires
Print the requires dependencies.
FILE
An ELF file. Other file types are silently ignored.
--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.
See Protocols in rpm-dependency-generators(7). By default,
singlefile protocol is used, but the multifile protocol can be
enabled with the --multifile option.
On success, 0 is returned, a non-zero failure code otherwise.
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.
rpmbuild(1) rpm-dependency-generator(7) elf(5) readelf(1)
http://www.rpm.org/
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)