Мне нужно прочитать из заголовка адрес точки входа
Обычно заводят структуру описывающую заголовок, читают в неё заголовок целиком, а потом достают интересующий член структуры. В частности, на linux для ELF определения заголовков Elf32_Ehdr и Elf64_Ehdr можно найти в /usr/include/linux/elf.h
Вместо чтения в память из файла можно замэпить часть файла в адресное пространство процесса, см.
man mmap.