|
|
1.1 root 1:
2:
3: ar Command ar
4:
5:
6:
7:
8: The librarian/archiver
9:
10: aarr _o_p_t_i_o_n [_m_o_d_i_f_i_e_r][_p_o_s_i_t_i_o_n] _a_r_c_h_i_v_e [_m_e_m_b_e_r ...]
11:
12: The librarian ar edits and examines libraries. It combines
13: several files into a file called an archive or library. Archives
14: reduce the size of directories and allow many files to be handled
15: as a single unit. The principal use of archives is for libraries
16: of object files. The linker ld understands the archive format,
17: and can search libraries of object files to resolve undefined
18: references in a program.
19:
20: The mandatory option argument consists of one of the following
21: command keys:
22:
23: dd Delete each given member from archive. The ranlib header is
24: updated if present.
25:
26: mm Move each given member within archive. If no modifier is
27: given, move each member to the end. The ranlib header is
28: modified if present.
29:
30: pp Print each member. This is useful only with archives of text
31: files.
32:
33: qq Quick append: append each member to the end of archive uncon-
34: ditionally. The ranlib header is not updated.
35:
36: rr Replace each member of archive. If archive does not exist,
37: create it. The optional modifier specifies how to perform the
38: replacement, as described below. The ranlib header is
39: modified if present.
40:
41: tt Print a table of contents that lists each member specified.
42: If none is given, list all in archive. The modifier v tells
43: ar to give you additional information.
44:
45: xx Extract each given member and place it into the current direc-
46: tory. If none is specified, extract all members. archive is
47: not changed.
48:
49: The modifier may be one of the following. The modifiers aa, bb, ii,
50: and uu may be used only with the m and r options.
51:
52: aa If member does not exist in archive, insert it after the mem-
53: ber named by the given position.
54:
55: bb If member does not exist in archive, insert it before the mem-
56: ber named by the given position.
57:
58: cc Suppress the message normally printed when ar creates an ar-
59: chive.
60:
61:
62:
63:
64: COHERENT Lexicon Page 1
65:
66:
67:
68:
69: ar Command ar
70:
71:
72:
73: ii If member does not exist in archive, insert it before the mem-
74: ber named by the given position. This is the same as the b
75: modifier, described above.
76:
77: kk Preserve the modify time of a file. This modifier is useful
78: only with the r, q, and x options.
79:
80: ss Modify an archive's ranlib header, or create it if it does not
81: exist. This is used only with the r, m, and d options.
82:
83: uu Update archive only if member is newer than the version in the
84: archive.
85:
86: vv Generate verbose messages.
87:
88: All archives are written into a specialized file format. Each
89: archive starts with a ``magic number'' called ARMAG, which iden-
90: tifies the file as an archive. The members of the archive follow
91: the magic number; each is preceded by an ar_hdr structure. For
92: information on this structure, see ar.h. The structure is
93: followed the data of the file, which occupy the number of bytes
94: specified by the variable ar_size.
95:
96: ***** See Also *****
97:
98: ar.h, commands, ld, nm, ranlib
99:
100: ***** Notes *****
101:
102: It is recommended that each object-file library you create with
103: ar have a name that begins with the string lib. This will allow
104: you to call that library with the -l option to the cc command.
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
128:
129:
130: COHERENT Lexicon Page 2
131:
132:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.