|
|
1.1 root 1:
2:
3: ar.h Header File ar.h
4:
5:
6:
7:
8: Format for archive files
9:
10: #include <ar.h>
11:
12: An archive is a file that has been built from a number of files.
13: Archives are maintained by the ar command. Usually, an archive
14: is a library of object files used by the linker ld.
15:
16: The header ar.h describes the format of an archive. All archives
17: start with a magic number ARMAG, which identifies the file as an
18: archive. The members of the archive follow the magic number,
19: each preceded by the structure ar_hdr:
20:
21:
22: #define DIRSIZ 14 /* from <dir.h> */
23: #define ARMAG 0177535 /* magic number */
24:
25:
26:
27: struct ar_hdr {
28: char ar_name[DIRSIZ]; /* member name */
29: time_t ar_date; /* time inserted */
30: short ar_gid; /* group owner */
31: short ar_uid; /* user owner */
32: short ar_mode; /* file mode */
33: size_t ar_size; /* file size */
34: };
35:
36:
37: The structure at the head of each member is immediately followed
38: by ar_size bytes, which are the data of the file.
39:
40: To enhance the performance of ld, the command ranlib provides a
41: random library facility. ranlib produces archives that contain a
42: special entry named _ _.SYMDEF at the beginning.
43:
44: All integer members of the structure (everything but ar_name) are
45: in canonical form to ease portability. See canon.h for more in-
46: formation.
47:
48: ***** See Also *****
49:
50: ar, canon.h, header files, ld, ranlib
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64: COHERENT Lexicon Page 1
65:
66:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.