annotate src/bzip2-1.0.6/README.COMPILATION.PROBLEMS @ 4:e13257ea84a4

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