Get the base offset for an object file
cc [flag...]
file... -lelf
[library]...
#include <libelf.h>
off_t elf_getbase(Elf * elf);
elf_getbase returns the file offset of the first byte of the file or archive member associated with elf, if it is known or obtainable, and -1 otherwise. A null elf is allowed, to simplify error handling; the return value in this case is -1. The base offset of an archive member is the beginning of the member's information, not the beginning of the archive member header.
The ar file format.
The elf_begin (elf_begin Subroutine) subroutine.
Introduction to ELF Subroutines.