cannam@89: ------------------------------------------------------------------ cannam@89: This file is part of bzip2/libbzip2, a program and library for cannam@89: lossless, block-sorting data compression. cannam@89: cannam@89: bzip2/libbzip2 version 1.0.6 of 6 September 2010 cannam@89: Copyright (C) 1996-2010 Julian Seward cannam@89: cannam@89: Please read the WARNING, DISCLAIMER and PATENTS sections in the cannam@89: README file. cannam@89: cannam@89: This program is released under the terms of the license contained cannam@89: in the file LICENSE. cannam@89: ------------------------------------------------------------------ cannam@89: cannam@89: bzip2-1.0.6 should compile without problems on the vast majority of cannam@89: platforms. Using the supplied Makefile, I've built and tested it cannam@89: myself for x86-linux and amd64-linux. With makefile.msc, Visual C++ cannam@89: 6.0 and nmake, you can build a native Win32 version too. Large file cannam@89: support seems to work correctly on at least on amd64-linux. cannam@89: cannam@89: When I say "large file" I mean a file of size 2,147,483,648 (2^31) cannam@89: bytes or above. Many older OSs can't handle files above this size, cannam@89: but many newer ones can. Large files are pretty huge -- most files cannam@89: you'll encounter are not Large Files. cannam@89: cannam@89: Early versions of bzip2 (0.1, 0.9.0, 0.9.5) compiled on a wide variety cannam@89: of platforms without difficulty, and I hope this version will continue cannam@89: in that tradition. However, in order to support large files, I've had cannam@89: to include the define -D_FILE_OFFSET_BITS=64 in the Makefile. This cannam@89: can cause problems. cannam@89: cannam@89: The technique of adding -D_FILE_OFFSET_BITS=64 to get large file cannam@89: support is, as far as I know, the Recommended Way to get correct large cannam@89: file support. For more details, see the Large File Support cannam@89: Specification, published by the Large File Summit, at cannam@89: cannam@89: http://ftp.sas.com/standards/large.file cannam@89: cannam@89: As a general comment, if you get compilation errors which you think cannam@89: are related to large file support, try removing the above define from cannam@89: the Makefile, ie, delete the line cannam@89: cannam@89: BIGFILES=-D_FILE_OFFSET_BITS=64 cannam@89: cannam@89: from the Makefile, and do 'make clean ; make'. This will give you a cannam@89: version of bzip2 without large file support, which, for most cannam@89: applications, is probably not a problem. cannam@89: cannam@89: Alternatively, try some of the platform-specific hints listed below. cannam@89: cannam@89: You can use the spewG.c program to generate huge files to test bzip2's cannam@89: large file support, if you are feeling paranoid. Be aware though that cannam@89: any compilation problems which affect bzip2 will also affect spewG.c, cannam@89: alas. cannam@89: cannam@89: AIX: I have reports that for large file support, you need to specify cannam@89: -D_LARGE_FILES rather than -D_FILE_OFFSET_BITS=64. I have not tested cannam@89: this myself.