Проблемы с пониманием hexdump библиотеки stati c (.a) в Linux - PullRequest
0 голосов
/ 29 марта 2020

Я скомпилировал очень простой файл C с двумя функциями в нем .a файл в Linux, и я хотел бы получить смещение функций из байтов, аналогичное команде "nm", но я хочу написать эту программу сам. Я зашпекнул его, ожидая найти эльфа "волшебный c номер" в начале, но оказалось, что это "! ". Я не смог найти, если есть структура для интерпретации байтов в "! ". Как я могу продолжить?

1 Ответ

1 голос
/ 29 марта 2020

Формат ar архивов хорошо задокументирован .

, ожидающих найти эльфа "маги c число" в начале

Вы найдете ELF маги c байтов со смещением 60, то есть после первого заголовка файла AR. Однако вам, возможно, придется пропустить специальные члены, такие как «индекс архива» (созданный ranlib), если он у вас есть.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...