LARGEFILE_SUPPORT (fwd)

Carter Bullard carter at qosient.com
Fri Nov 9 14:24:28 EST 2001


Hey Martin,
   A veritable gold mine!
Thanks!!!

Carter

> -----Original Message-----
> From: Martin Siegert [mailto:siegert at sfu.ca] 
> Sent: Friday, November 09, 2001 1:44 PM
> To: Carter Bullard
> Cc: 'Peter Van Epp'; scott at xs4all.nl; argus at lists.andrew.cmu.edu
> Subject: Re: LARGEFILE_SUPPORT (fwd)
> 
> 
> On Fri, Nov 09, 2001 at 12:46:02PM -0500, Carter Bullard wrote:
> 
> >    I'm going to add a linux 2.4 or higher test, and
> > then I was thinking of using an autoconf macro
> > to test if lseek64() existed when I make the appropriate defines.
> > 
> >    Is lseek64() a reasonable tag, or do you think
> > there is a better one?
> 
> I don't know whether a test for lseek64 will tell you 
> anything. The "64" versions of such system calls were in 
> glibc-2.1 for quite a while already (fopen64, lseek64, etc.), 
> but LFS still did not work with the 2.2 kernels (exception is 
> RedHat's 2.2.19-enterprise kernel that has a LFS patch).
> 
> With respect to compilation of software I believe that the 
> compiler flag -D_FILE_OFFSET_BITS=64 should be all that you 
> need to get LFS support on the newer 2.4/glibc-2.2 systems.
> 
> System calls should use the O_LARGEFILE flag, e.g.,
> 
> open("./largefile", O_WRONLY|O_CREAT|O_TRUNC|O_LARGEFILE, 0666)
> 
> If this fails with EFBIG (File too large) then LFS is 
> missing. There is a software package available at 
ftp://ftp.scyld.com/pub/lfs/lfs-1.2.0.tar.gz
that you can use to test the availability of LFS. It contains 4 little
programs. The most conclusive one is probably lfs-test3.

Martin

========================================================================
Martin Siegert
Academic Computing Services                        phone: (604) 291-4691
Simon Fraser University                            fax:   (604) 291-4242
Burnaby, British Columbia                          email: siegert at sfu.ca
Canada  V5A 1S6
========================================================================




More information about the argus mailing list