How to read content of ELF or object file on GNU/Linux

Yep, as the title said of this article. I will show you a little example how easily you can find out the internals of an ELF file or an object file with a utility called readelf, which comes along with all the GNU/Linux distributions.

So without much ado..lets show the actual thing..I am on Slackware and I am trying to inspect the mutt binary file by this utility. Here we go:

bhaskar@Slackware_12:12:41_Wed Dec 07:~> sudo /usr/bin/readelf -h /usr/bin/mutt
ELF Header:
Magic: 7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00
Class: ELF64
Data: 2's complement, little endian
Version: 1 (current)
OS/ABI: UNIX - System V
ABI Version: 0
Type: EXEC (Executable file)
Machine: Advanced Micro Devices X86-64
Version: 0x1
Entry point address: 0x40c3c0
Start of program headers: 64 (bytes into file)
Start of section headers: 878344 (bytes into file)
Flags: 0x0
Size of this header: 64 (bytes)
Size of program headers: 56 (bytes)
Number of program headers: 8
Size of section headers: 64 (bytes)
Number of section headers: 28
Section header string table index: 27

So, you can see the details of the mutt binary..rtt? Now go ahead and read the man page to find out more information about it.It has so many option to filter out so many information to deal with.

Hope this will help.