Hello,
I am impressed, because it is not easy to write a ELF runtime link
editor, and more difficult to build a ELF to COFF conversor on the fly...
I am working with ELF at low level from six months ago and it is not an
easy task, because there are not too much tutorials about ELF... only
specs and some articles...
My recommended bookmarks are:
- The System V ABI Specification (ELF Specs). A "must read" if you
plan to do anything with ELF
http://www.caldera.com/developers/devspecs/
http://www.caldera.com/developers/gabi/
- How to use dl_open interface. It is not part of ELF specs, but
it's found in any modern Un*x.
http://docsrv.sco.com:8457/en/DevelopLib/dl-libraries.html
- A Phrack article talking about using ELFsh and manipulating ELF files.
http://www.phrack.org/show.php?p=61&a=8
- The Linux GCC Howto. Explains some details about dynamic loading.
http://www.linuxdocs.org/HOWTOs/GCC-HOWTO/
- ELFsh. The ELF shell is an interactive, modular and scriptable ELF
(Executable & Linking Format) machine designed for executable files,
shared libraries and relocatable ELF objects manipulation. Interesting
source code.
http://elfsh.segfault.net/
- The LSB. Explains some details about ELF on Linux. If you are
planning to support ELF you must deal with the same ELF format of Linux.
http://www.linuxbase.org/spec/
- One of the most important: Tool Interface Standard (TIS)
Executable and Linking Format (ELF) Specification:
http://www.x86.org/ftp/manuals/tools/elf.pdf
- This is very interesting. It shows what is important in the ELF
headers:
http://www.comms.scitech.susx.ac.uk/fft/programming/teensy.html
Luck!
Gerardo García Peña
art yerkes wrote:
Please post a tutorial (or link) on building elf exes.