Где я могу найти спецификацию формата файла GNU ar?
Мне нужно получить доступ к созданному файлу, но я не могу найти документ спецификации, определяющий формат. Может ли кто-нибудь указать мне правильное направление?
3 ответа
Из Википедии:
Формат ar никогда не был стандартизирован; Современные архивы основаны на общем формате с двумя известными вариантами, BSD и GNU.
Там тоже больше информации.
Где найти информацию
Кажется, у GNU binutils нет документации для формата файла.
Я считаю, что лучшая ссылка есть на странице руководства ar(5) от FreeBSD . Утилита была удалена в версии 5.0, но справочная страница для 4.11 все еще доступна.
Как обычно, детали заголовка можно найти в файлах заголовков:
- GNU Binutils — арх.ч
- FreeBSD — src/usrbin/ar.h (некоторое время назад его удалили, но он до сих пор находится в контроле версий).
Кроме того, на странице Википедии для формата файла AR есть хорошая диаграмма, описывающая формат файла (это из пакета .deb, который также является файлом).
Формат файла
Этот файл имеет очень простую структуру:
- Подпись файла (та, которая идентифицирует это как
ar
файл). - Для каждого файла в архиве имеем:
- Заголовок, который содержит имя файла, владельца, группу, размер и права доступа (см. файл заголовка).
- Содержимое файла
- И, возможно, заполнение (\n).
Некоторая информация на веб-сайте IBM: http://pic.dhe.ibm.com/infocenter/aix/v7r1/index.jsp?topic=%2Fcom.ibm.aix.files%2Fdoc%2Faixfiles%2Far_big.htm