summaryrefslogtreecommitdiffstats
path: root/README
diff options
context:
space:
mode:
authorEelco Dolstra <e.dolstra@tudelft.nl>2005-10-11 13:03:30 (GMT)
committerEelco Dolstra <e.dolstra@tudelft.nl>2005-10-11 13:03:30 (GMT)
commit07b8f2370672bd096e1fe5bd323f7e62792e724b (patch)
treebbe85be1c5238dabf7746f40f1812d8b6e75fe6a /README
parent37cd5c8d04e514817c25916d0a3fb82c9e3933f3 (diff)
downloadpatchelf-07b8f2370672bd096e1fe5bd323f7e62792e724b.zip
patchelf-07b8f2370672bd096e1fe5bd323f7e62792e724b.tar.gz
patchelf-07b8f2370672bd096e1fe5bd323f7e62792e724b.tar.bz2
* Add a README and a license.
Diffstat (limited to 'README')
-rw-r--r--README37
1 files changed, 37 insertions, 0 deletions
diff --git a/README b/README
new file mode 100644
index 0000000..a6b891c
--- /dev/null
+++ b/README
@@ -0,0 +1,37 @@
+PatchELF is simple utility for modifing existing ELF executables and
+libraries. In particular, it can do the following:
+
+* Change the dynamic loader ("ELF interpreter") of executables:
+
+ $ patchelf --interpreter /lib/my-ld-linux.so.2 my-program
+
+* Change the RPATH of executables and libraries:
+
+ $ patchelf --set-rpath /opt/my-libs/lib:/other-libs my-program
+
+* Shrink the RPATH of executables and libraries:
+
+ $ patchelf --shrink-rpath /opt/my-libs/lib:/other-libs my-program
+
+ This removes 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".
+
+
+AUTHOR
+
+Copyright 2004, 2005, Eelco Dolstra <eelco@cs.uu.nl>. See COPYING for
+the license.
+
+
+HOMEPAGE
+
+http://nix.cs.uu.nl/
+
+
+BUGS
+
+Currently setting the RPATH on libraries ("--set-rpath") will usually
+fail if the new RPATH is longer then the old RPATH.