[9] | 1 |
|
---|
| 2 | bzip2-1.0.3 should compile without problems on the vast majority of
|
---|
| 3 | platforms. Using the supplied Makefile, I've built and tested it
|
---|
| 4 | myself for x86-linux and x86_64-linux. With makefile.msc, Visual C++
|
---|
| 5 | 6.0 and nmake, you can build a native Win32 version too. Large file
|
---|
| 6 | support seems to work correctly on at least alpha-tru64unix and
|
---|
| 7 | x86-cygwin32 (on Windows 2000).
|
---|
| 8 |
|
---|
| 9 | When I say "large file" I mean a file of size 2,147,483,648 (2^31)
|
---|
| 10 | bytes or above. Many older OSs can't handle files above this size,
|
---|
| 11 | but many newer ones can. Large files are pretty huge -- most files
|
---|
| 12 | you'll encounter are not Large Files.
|
---|
| 13 |
|
---|
| 14 | Earlier versions of bzip2 (0.1, 0.9.0, 0.9.5) compiled on a wide
|
---|
| 15 | variety of platforms without difficulty, and I hope this version will
|
---|
| 16 | continue in that tradition. However, in order to support large files,
|
---|
| 17 | I've had to include the define -D_FILE_OFFSET_BITS=64 in the Makefile.
|
---|
| 18 | This can cause problems.
|
---|
| 19 |
|
---|
| 20 | The technique of adding -D_FILE_OFFSET_BITS=64 to get large file
|
---|
| 21 | support is, as far as I know, the Recommended Way to get correct large
|
---|
| 22 | file support. For more details, see the Large File Support
|
---|
| 23 | Specification, published by the Large File Summit, at
|
---|
| 24 | http://ftp.sas.com/standards/large.file
|
---|
| 25 |
|
---|
| 26 | As a general comment, if you get compilation errors which you think
|
---|
| 27 | are related to large file support, try removing the above define from
|
---|
| 28 | the Makefile, ie, delete the line
|
---|
| 29 | BIGFILES=-D_FILE_OFFSET_BITS=64
|
---|
| 30 | from the Makefile, and do 'make clean ; make'. This will give you a
|
---|
| 31 | version of bzip2 without large file support, which, for most
|
---|
| 32 | applications, is probably not a problem.
|
---|
| 33 |
|
---|
| 34 | Alternatively, try some of the platform-specific hints listed below.
|
---|
| 35 |
|
---|
| 36 | You can use the spewG.c program to generate huge files to test bzip2's
|
---|
| 37 | large file support, if you are feeling paranoid. Be aware though that
|
---|
| 38 | any compilation problems which affect bzip2 will also affect spewG.c,
|
---|
| 39 | alas.
|
---|