NAME¶
patchelf - Modify ELF files
SYNOPSIS¶
patchelf OPTION FILE
DESCRIPTION¶
PatchELF is a simple utility for modifying existing ELF executables and
libraries. It can change the dynamic loader ("ELF interpreter") of
executables and change the RPATH of executables and libraries.
OPTIONS¶
The single option given operates on a given FILE, editing in place.
- --set-interpreter INTERPRETER
- Change the dynamic loader ("ELF interpreter") of executable
given to INTERPRETER.
- --print-interpreter
- Prints the ELF interpreter of the executable.
- --set-rpath RPATH
- Change the RPATH of the executable or library to RPATH.
- --shrink-rpath
- Remove from the RPATH all directories that do not contain a library
referenced by DT_NEEDED fields of the executable or library.
For instance, if an executable references one library libfoo.so, has an
RPATH "/lib:/usr/lib:/foo/lib", and libfoo.so can only be found
in /foo/lib, then the new RPATH will be "/foo/lib".
- --print-rpath
- Prints the RPATH for an executable or library.
- --force-rpath
- Forces the use of the obsolete DT_RPATH in the file instead of DT_RUNPATH.
By default DT_RPATH is converted to DT_RUNPATH.
- --remove-needed LIBRARY
- Removes a declared depency on LIBRARY (DT_NEEDED entry). This option can
be given multiple times.
- --debug
- Prints details of the changes made to the input file.
- --version
- Shows the version of patchelf.
AUTHOR¶
Eelco Dolstra <e.dolstra@tudelft.nl>
SEE ALSO¶
elf(5),
ld.so(8)