|
|
1.1 root 1: .TH AR 5 "15 January 1983"
2: .SH NAME
3: ar \- archive (library) file format
4: .SH SYNOPSIS
5: .B #include <ar.h>
6: .SH DESCRIPTION
7: .PP
8: The archive command
9: .I ar
10: combines several files into one.
11: Archives are used mainly as libraries to be searched by the link-editor
12: .I ld.
13: .PP
14: A file produced by
15: .I ar
16: has a magic string at the start,
17: followed by the constituent files, each preceded by a file header.
18: The magic number and header layout as described in the include file are:
19: .RS
20: .PP
21: .nf
22: .ta \w'#define 'u +\w'SARMAG 'u
23: .ec %
24: .so /usr/include/ar.h
25: .ec \
26: .fi
27: .RE
28: .LP
29: The name is a blank-padded string.
30: The
31: .I ar_fmag
32: field contains ARFMAG to help verify the presence of a header.
33: The other fields are left-adjusted, blank-padded numbers.
34: They are decimal except for
35: .IR ar_mode ,
36: which is octal.
37: The date is the modification date of the file
38: at the time of its insertion into the archive.
39: .PP
40: Each file begins on a even (0 mod 2) boundary;
41: a new-line is inserted between files if necessary.
42: Nevertheless the size given reflects the
43: actual size of the file exclusive of padding.
44: .PP
45: There is no provision for empty areas in an archive file.
46: .PP
47: The encoding of the header is portable across machines.
48: If an archive contains printable files, the archive itself is printable.
49: .SH "SEE ALSO"
50: ar(1), ld(1), nm(1)
51: .SH BUGS
52: File names lose trailing blanks.
53: Most software dealing with archives takes even
54: an included blank as a name terminator.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.