Skip to content

ar archive format support #12

@M0Rf30

Description

@M0Rf30

Introduce the format you are requesting.

from https://en.wikipedia.org/wiki/Ar_(Unix)

The ar format has never been standardized; modern archives are based on a common format with two main variants, BSD and System V (initially known as COFF, and used as well by GNU, ELF, and Windows.)

Historically there have been other variants[5] including V6, V7, AIX (small and big), and Coherent, which all vary significantly from the common format.[6]

Debian ".deb" archives use the common format.

An ar file begins with a global header, followed by a header and data section for each file stored within the ar file.

Each data section is 2 byte aligned. If it would end on an odd offset, a newline ('\n', 0x0A) is used as filler.

What do YOU use this format for?

ar is generally used only to create and update static library files that the link editor or linker uses and for generating .deb packages for the Debian family; it can be used to create archives for any purpose.

What is the format's conventional file extension(s)?

most common are:

  • .a
  • .deb

Please link to the format's formal or official specification(s).

https://pubs.opengroup.org/onlinepubs/9699919799/utilities/ar.html->

Which Go libraries could be used to implement this format?

https://github.com/blakesmith/ar

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions