cannam@89
|
1 ------------------------------------------------------------------
|
cannam@89
|
2 This file is part of bzip2/libbzip2, a program and library for
|
cannam@89
|
3 lossless, block-sorting data compression.
|
cannam@89
|
4
|
cannam@89
|
5 bzip2/libbzip2 version 1.0.6 of 6 September 2010
|
cannam@89
|
6 Copyright (C) 1996-2010 Julian Seward <jseward@bzip.org>
|
cannam@89
|
7
|
cannam@89
|
8 Please read the WARNING, DISCLAIMER and PATENTS sections in the
|
cannam@89
|
9 README file.
|
cannam@89
|
10
|
cannam@89
|
11 This program is released under the terms of the license contained
|
cannam@89
|
12 in the file LICENSE.
|
cannam@89
|
13 ------------------------------------------------------------------
|
cannam@89
|
14
|
cannam@89
|
15 bzip2-1.0.6 should compile without problems on the vast majority of
|
cannam@89
|
16 platforms. Using the supplied Makefile, I've built and tested it
|
cannam@89
|
17 myself for x86-linux and amd64-linux. With makefile.msc, Visual C++
|
cannam@89
|
18 6.0 and nmake, you can build a native Win32 version too. Large file
|
cannam@89
|
19 support seems to work correctly on at least on amd64-linux.
|
cannam@89
|
20
|
cannam@89
|
21 When I say "large file" I mean a file of size 2,147,483,648 (2^31)
|
cannam@89
|
22 bytes or above. Many older OSs can't handle files above this size,
|
cannam@89
|
23 but many newer ones can. Large files are pretty huge -- most files
|
cannam@89
|
24 you'll encounter are not Large Files.
|
cannam@89
|
25
|
cannam@89
|
26 Early versions of bzip2 (0.1, 0.9.0, 0.9.5) compiled on a wide variety
|
cannam@89
|
27 of platforms without difficulty, and I hope this version will continue
|
cannam@89
|
28 in that tradition. However, in order to support large files, I've had
|
cannam@89
|
29 to include the define -D_FILE_OFFSET_BITS=64 in the Makefile. This
|
cannam@89
|
30 can cause problems.
|
cannam@89
|
31
|
cannam@89
|
32 The technique of adding -D_FILE_OFFSET_BITS=64 to get large file
|
cannam@89
|
33 support is, as far as I know, the Recommended Way to get correct large
|
cannam@89
|
34 file support. For more details, see the Large File Support
|
cannam@89
|
35 Specification, published by the Large File Summit, at
|
cannam@89
|
36
|
cannam@89
|
37 http://ftp.sas.com/standards/large.file
|
cannam@89
|
38
|
cannam@89
|
39 As a general comment, if you get compilation errors which you think
|
cannam@89
|
40 are related to large file support, try removing the above define from
|
cannam@89
|
41 the Makefile, ie, delete the line
|
cannam@89
|
42
|
cannam@89
|
43 BIGFILES=-D_FILE_OFFSET_BITS=64
|
cannam@89
|
44
|
cannam@89
|
45 from the Makefile, and do 'make clean ; make'. This will give you a
|
cannam@89
|
46 version of bzip2 without large file support, which, for most
|
cannam@89
|
47 applications, is probably not a problem.
|
cannam@89
|
48
|
cannam@89
|
49 Alternatively, try some of the platform-specific hints listed below.
|
cannam@89
|
50
|
cannam@89
|
51 You can use the spewG.c program to generate huge files to test bzip2's
|
cannam@89
|
52 large file support, if you are feeling paranoid. Be aware though that
|
cannam@89
|
53 any compilation problems which affect bzip2 will also affect spewG.c,
|
cannam@89
|
54 alas.
|
cannam@89
|
55
|
cannam@89
|
56 AIX: I have reports that for large file support, you need to specify
|
cannam@89
|
57 -D_LARGE_FILES rather than -D_FILE_OFFSET_BITS=64. I have not tested
|
cannam@89
|
58 this myself.
|