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