]> Dogcows Code - chaz/tar/blob - README
Update version to 1.12.lfs.1
[chaz/tar] / README
1 GNU `tar' 1.12.lfs.1 is an unofficial port of GNU `tar' 1.12 to Large
2 File Summit (LFS) environments like Solaris 2.6 that rely on integer
3 system types longer than `long'. Ordinary GNU `tar' 1.12 cannot handle
4 files larger than 2 GB when compiled in such environments. This port
5 addresses that problem. Please send bug reports specific to this
6 unofficial version of GNU `tar' to <eggert@twinsun.com>.
7
8 Please glance through *all* sections of this
9 `README' file before starting configuration. Also make sure you read files
10 `ABOUT-NLS' and `INSTALL' if you are not familiar with them already.
11
12 If you got the `tar' distribution in `shar' format, timestamps ought to be
13 properly restored, do not ignore such complaints at `unshar' time.
14
15 GNU `tar' saves many files together into a single tape or disk
16 archive, and can restore individual files from the archive. It includes
17 multivolume support, the ability to archive sparse files, automatic archive
18 compression/decompression, remote archives and special features that allow
19 `tar' to be used for incremental and full backups. This distribution
20 also includes `rmt', the remote tape server. The `mt' tape drive control
21 program is in the GNU `cpio' distribution.
22
23 GNU `tar' is derived from John Gilmore's public domain `tar'.
24
25 See file `ABOUT-NLS' for how to customize this program to your language.
26 See file `BACKLOG' for a summary of pending mail and articles.
27 See file `COPYING' for copying conditions.
28 See file `INSTALL' for compilation and installation instructions.
29 See file `PORTS' for various ports of GNU tar to non-Unix systems.
30 See file `NEWS' for a list of major changes in the current release.
31 See file `THANKS' for a list of contributors.
32
33 Besides those configure options documented in files `INSTALL' and
34 `ABOUT-NLS', a few extra options may be accepted after `./configure':
35
36 * `--with-included-malloc' or `--without-included-malloc' may override
37 the automatic choice made by `configure' about using included GNU malloc.
38
39 * `--with-dmalloc' is a debugging option for looking at memory management
40 problems, it prerequires Gray Watson's package, which is available as
41 `ftp://ftp.letters.com/src/dmalloc/dmalloc.tar.gz'.
42
43 The default archive device is now `stdin' on read and `stdout' on write.
44 The installer can still override this by presetting `DEFAULT_ARCHIVE'
45 in the environment before configuring (the behavior of `-[0-7]' or
46 `-[0-7]lmh' options in `tar' are then derived automatically). Similarly,
47 `DEFAULT_BLOCKING' can be preset to something else than 20.
48
49 For comprehensive modifications to GNU tar, you might need tools beyond
50 those used in simple installations. Fully install GNU m4 1.4 first,
51 and only then, Autoconf 2.12 with officious patches held in `AC-PATCHES'.
52 Install Perl, then Automake 1.1n with officious patches in `AM-PATCHES'.
53 You might need Bison 1.25 with officious patches in `BI-PATCHES' (but yacc
54 and byacc may be OK for you), and GNU tar itself. All are available on
55 GNU archive sites, like in ftp://prep.ai.mit.edu/pub/gnu/, but Automake
56 is still ftp://ftp.cygnus.com/pub/tromey/automake-1.1n.tar.gz.
57
58 Send bug reports to `tar-bugs@gnu.ai.mit.edu'. (Beware, old-timers: it is
59 `@gnu', not `@prep'; and not `bug-gnu-utils' anymore.) A bug report is
60 an adequate description of the problem: your input, what you expected,
61 what you got, and why this is wrong. Diffs are welcome, but they only
62 describe a solution, from which the problem might be uneasy to infer.
63 If needed, submit actual data files with your report. Small data files
64 are preferred. Big files may sometimes be necessary, but do not send them
65 to the report address; rather take special arrangement with the maintainer.
66
67 Your feedback will help us to make a better and more portable package.
68 Consider documentation errors as bugs, and report them as such. If you
69 develop anything pertaining to `tar' or have suggestions, let us know
70 and share your findings by writing at `tar-forum@iro.umontreal.ca'.
71
72 .--------------------.
73 | Installation hints |
74 `--------------------'
75
76 Here are a few hints which might help installing `tar' on some systems.
77
78 * Static linking.
79
80 Some platform will, by default, prepare a smaller `tar' executable
81 which depends on shared libraries. Since GNU `tar' may be used for
82 system-level backups and disaster recovery, installers might prefer to
83 force static linking, making a bigger `tar' executable maybe, but able to
84 work standalone, in situations where shared libraries are not available.
85 The way to achieve static linking varies between systems. Set LDFLAGS
86 to a value from the table below, before configuration (see `INSTALL').
87
88 Platform Compiler LDFLAGS
89
90 (any) Gnu C -static
91 AIX (vendor) "-bnso -bI:/lib/syscalls.exp"
92 HPUX (vendor) -Wl,-a,archive
93 IRIX (vendor) -non_shared
94 OSF (vendor) -non_shared
95 SCO 3.2v5 (vendor) -dn
96 Solaris (vendor) -Bstatic
97 SunOS (vendor) -Bstatic
98
99 * Failed `incremen.sh'.
100
101 In an NFS environment, lack of synchronisation between machine clocks
102 might create difficulties to any tool comparing dates and file timestamps,
103 like `tar' in incremental dumps. This has been a recurrent problem in
104 GNU Makefiles for the last few years. We would like a general solution.
105
106 * BSD compatibility matters.
107
108 Set LIBS to `-lbsd' before configuration (see `INSTALL') if the linker
109 complains about undefined `valloc' (AIX) or `bsd_ioctl' (Slackware).
110 Also set CPPFLAGS to `-I/usr/include/bsd/sys' before configuration to
111 solve dirent problems (NeXT), or to `-I/usr/include/bsd' if <sgtty.h>
112 is not found (Slackware).
113
114 * `union wait' problems.
115
116 Configuration of `union wait' does not always take the best decision.
117 If you have this problem, edit file `config.cache' after configuration,
118 find the line about `tar_cv_header_union_wait', change `yes' by `no'
119 or vice-versa, execute `./config.status', then launch `make'.
120
121 * `%lld' unsupported in `printf'.
122
123 GNU C has `long long', but the underneath C library might not support
124 the `%lld' format. If you have this problem, edit file `config.cache'
125 after configuration, find the line about `ac_cv_sizeof_long_long, change
126 `8' by `0', execute `./config.status', then launch `make'.
127
128 * FreeBSD users -- `configure' fails.
129
130 It has been reported that `configure' does not run on FreeBSD 2.1.7,
131 because of a buggy `sh'. It works using `bash', however.
132
133 * ISC users -- `S_*' symbols undefined.
134
135 On ISC 4.1mu, POSIX environment, set CFLAGS to `-posix' and CPPFLAGS to
136 `-D_SYSV3' before configuration (see `INSTALL'). This will trigger the
137 definition of a few `S_' prefixed symbols from <sys/stat.h>.
138
139 * Ultrix users -- broken `make'.
140
141 It seems that Ultrix make does not correctly handle shell commands
142 having logical connectives in them. Use `s5make' if you have it, try
143 `PROG_ENV=SYSTEM_FIVE make' (works on Ultrix 4.4), or install GNU Make.
144
145 .------------------.
146 | Special topics. |
147 `------------------'
148
149 Here are a few special matters about GNU `tar', not related to build
150 matters. See previous section for such.
151
152 * File attributes.
153
154 About *security*, it is probable that future releases of `tar' will have
155 some behaviour changed. There are many pending suggestions to choose from.
156 Today, extracting an archive not being `root', `tar' will restore suid/sgid
157 bits on files but owned by the extracting user. `root' automatically gets
158 a lot of special priviledges, `-p' might later become required to get them.
159
160 GNU `tar' does not properly restore symlink attributes. Various systems
161 implement flavours of symbolic links showing different behaviour and
162 properties. We did not successfully sorted all these out yet. Currently,
163 the `lchown' call will be used if available, but that's all.
164
165 * POSIX compliance.
166
167 GNU `tar' implements an early draft of the POSIX 1003.1 `ustar' standard
168 which is different from the final standard. This will be progressively
169 corrected over the incoming few years. Don't be mislead by the mere
170 existence of the --posix option. Later releases will become able to
171 read truly POSIX archives, and also to produce them under option. (Also,
172 if you look at the internals, don't take the GNU extensions you see for
173 granted, as they are planned to change.) GNU tar 2.0 will produce POSIX
174 archives by default, but there is a long way before we get there.
175
176 * What's next?
177
178 The emphasis from 1.11.2 to 1.12 has been on solving the main portability,
179 execution or usability bugs. This was accompanied all over with an
180 internal cleanup in the sources, and the reassembly of a `tar' manual.
181
182 The `BACKLOG' file shows an approximative priorisation of the many pending
183 problems and suggestions. Besides pending problems and all other matters
184 listed above, the cleanup is planned to continue and extend to the general
185 organisation of the code, preparing a long time in advance for a possible
186 merge of the `cpio' and `tar' distributions, into some common `paxutils'.
187 We also want to address some long-awaited performance issues (for example:
188 double buffering) or enhancements (for example: per-file compression).
This page took 0.039004 seconds and 5 git commands to generate.