Tools for Manipulating Object Files
There are a number of tools available on Linux systems to help you understand and manipulate object files. In particular, the GNU binutils package is especially helpful and runs on every Linux platform.
- ar. Creates static libraries, and inserts, deletes, lists, and extracts members.
- strings. Lists all of the printable strings contained in an object file.
- strip. Deletes symbol table information from an object file.
- nm. Lists the symbols defined in the symbol table of an object file.
- size. Lists the names and sizes of the sections in an object file.
- readelf. Displays the complete structure of an object file, including all of the information encoded in the ELF header. Subsumes the functionality of size and nm.
objdump. The mother of all binary tools.Can display all of the informationinan object
file. Its most useful function is disassembling the binary instructions in the.text
section.
Linux systems also provide the ldd program for manipulating shared libraries:
ldd: Lists the shared libraries that an executable needs at run time.