74 lines
2.8 KiB
Plaintext
74 lines
2.8 KiB
Plaintext
This distribution is a collection of programs that are generally
|
|
unrelated, except in that they all deal with the ELF file format.
|
|
|
|
The main purpose of these programs is to be illustrative and
|
|
educational -- to help fellow programmers understand the ELF file
|
|
format and something of how it works under the Linux platform. For the
|
|
most part, these programs have limited real-world utility. (Although I
|
|
myself have found some of these programs quite useful while writing
|
|
the others.)
|
|
|
|
Each program is independent. There is no shared code between them, and
|
|
in fact they all take slightly different approaches to handling ELF
|
|
files.
|
|
|
|
The table of contents:
|
|
|
|
sstrip/
|
|
sstrip is a small utility that removes everything from an ELF file
|
|
that is not part of the file's memory image.
|
|
|
|
rebind/
|
|
rebind is another small utility that alters the binding of selected
|
|
exported symbols in an ELF object file.
|
|
|
|
elfls/
|
|
elfls is a utility that displays an ELF file's program and/or
|
|
section header tables, which serve as a kind of global roadmap to
|
|
the file's contents.
|
|
|
|
elftoc/
|
|
elftoc takes an ELF file and generates C code that defines a
|
|
structure with the same memory image, using the structures and
|
|
preprocessor symbols defined in <linux/elf.h>.
|
|
|
|
ebfc/
|
|
ebfc is a compiler for a tiny programming language. The compiler can
|
|
generate ELF executables, object files, and shared libraries.
|
|
|
|
tiny/
|
|
This directory contains a collection of very small ELF executables.
|
|
|
|
See the README in each directory for more details.
|
|
|
|
The ELF standard is necessary reading if you wish to fully understand
|
|
how all of the programs work. You can download a copy as a Postscript
|
|
document from ftp://tsx.mit.edu/pub/linux/packages/GCC/ELF.doc.tar.gz.
|
|
Alternately, you can obtain a flat-text transcription of this document
|
|
from http://www.muppetlabs.com/~breadbox/software/ELF.txt.
|
|
|
|
These programs are Copyright (C) 1999-2001 by Brian Raiter.
|
|
|
|
These programs are all free software; you can redistribute and/or
|
|
modify them under the terms of the GNU General Public License as
|
|
published by the Free Software Foundation; either version 2 of the
|
|
License, or (at your option) any later version.
|
|
|
|
These programs are distributed in the hope that they will be
|
|
interesting, but without any warranty; without even the implied
|
|
warranty of merchantability or fitness for a particular purpose.
|
|
See the GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with this program, in the file COPYING. If not, write to the
|
|
Free Software Foundation, Inc., 59 Temple Place, Suite 330,
|
|
Boston, MA 02111-1307 USA.
|
|
|
|
Bug reports and general feedback should be directed to the author at
|
|
breadbox@muppetlabs.com.
|
|
|
|
Share and enjoy.
|
|
|
|
Brian Raiter
|
|
breadbox@muppetlabs.com
|