Projects / libelf


libelf lets you read, modify or create ELF files in an architecture-independent way. The library takes care of size and endian issues. For example, you can process a file for SPARC processors on an Intel-based system. This library is a clean-room rewrite of the System V Release 4 library, and is supposed to be source code compatible with it. It was meant primarily for porting SVR4 applications to other operating systems, but can also be used as the basis for new applications (and as a light-weight alternative to libbfd).

Operating Systems

Recent releases

  •  01 Nov 2009 13:14

    Release Notes: A new function, elf_getaroff(), was added to maintain compatibility with other implementations. A few build fixes were made.

    •  07 Jul 2009 18:06

      Release Notes: Due to some unfortunate confusion, the elf_getphnum(), elf_getshnum(), and elf_getshstrndx() are not compatible between libelf implementations. Therefore, the developers jointly decided to replace them with new functions: elf_getphdrnum(), elf_getshdrnum(), and elf_getshdrstrndx(), which will always return -1 on failure and 0 on success. Code using the old interface should be upgraded to increase portability.

      •  22 May 2009 17:26

        Release Notes: This release fixes a bug in elf_rawfile().

        •  07 Sep 2007 13:12

          Release Notes: Users are now able to turn off select sanity checks that are not compatible with other versions of libelf.

          •  22 Aug 2006 12:27

            Release Notes: The data translator can now handle versioning sections with inconsistent data (as found on Solaris). Windows DLLs should work now as well.


            Project Spotlight


            A Fluent OpenStack client API for Java.


            Project Spotlight

            TurnKey TWiki Appliance

            A TWiki appliance that is easy to use and lightweight.