|
|
1.1 ! root 1: .TH AR 5 ! 2: .CT 1 lib_obj ! 3: .SH NAME ! 4: ar \- archive (library) file format ! 5: .SH SYNOPSIS ! 6: .B #include <ar.h> ! 7: .SH DESCRIPTION ! 8: The archive command ! 9: .IR ar (1) ! 10: is used to combine several files into ! 11: one. ! 12: Archives are used mainly as libraries to be searched ! 13: by the link-editor ! 14: .I ld. ! 15: .PP ! 16: A file produced by ! 17: .I ar ! 18: has a magic string at the start, ! 19: followed by the constituent files, each preceded by a file header. ! 20: The magic number and header layout as described in the ! 21: include file are: ! 22: .PP ! 23: .EX ! 24: .ta \w'#define 'u +\w'SAR_HDR 'u ! 25: .ec % ! 26: #define ARMAG "!<arch>\n" ! 27: #define SARMAG 8 ! 28: ! 29: #define ARFMAG "`\n" ! 30: ! 31: struct ar_hdr { ! 32: char ar_name[16]; ! 33: char ar_date[12]; ! 34: char ar_uid[6]; ! 35: char ar_gid[6]; ! 36: char ar_mode[8]; ! 37: char ar_size[10]; ! 38: char ar_fmag[2]; ! 39: }; ! 40: #define SAR_HDR 60 ! 41: .ec \ ! 42: .EE ! 43: .LP ! 44: The name is a blank-padded string. ! 45: The ! 46: .L ar_fmag ! 47: field contains ! 48: .L ARFMAG ! 49: to help verify the presence of a header. ! 50: The other fields are left-adjusted, blank-padded numbers. ! 51: They are decimal except for ! 52: .LR ar_mode , ! 53: which is octal. ! 54: The date is the modification date of the file ! 55: at the time of its insertion into the archive. ! 56: The length of the header is ! 57: .LR SAR_HDR . ! 58: Because ! 59: .L struct ar_hdr ! 60: may be padded on some machines, ! 61: .L SAR_HDR ! 62: should be used in preference to ! 63: .L sizeof(struct ar_hdr) ! 64: when reading and writing file headers. ! 65: .PP ! 66: Each file begins on an even (0 mod 2) boundary; ! 67: a newline is inserted between files if necessary. ! 68: Nevertheless ! 69: .B ar_size ! 70: reflects the ! 71: actual size of the file exclusive of padding. ! 72: .PP ! 73: There is no provision for empty areas in an archive ! 74: file. ! 75: .PP ! 76: If an archive contains only printable files, the archive itself ! 77: is printable. ! 78: .SH "SEE ALSO" ! 79: .IR ar (1), ! 80: .IR ld (1), ! 81: .IR nm (1) ! 82: .SH BUGS ! 83: File names lose trailing blanks. ! 84: .br ! 85: Most software that deals with archives takes ! 86: an embedded blank as a name terminator.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.