Boost logo

Boost :

From: David Abrahams (dave_at_[hidden])
Date: 2004-05-03 08:01:10


David Judson <djudson_at_[hidden]> writes:

> In a number of places in the filesystem library on Linux, the ::stat
> file system call is used. When this call is executed on a file whose
> size is larger than 2GB, it fails because the file size cannot fit
> into the default "stat" structure. This problem happens even when the
> size information in the stat structure is not used. For example the
> stat information is used in the directory iterator to look for sub
> directories.
>
> This can be corrected by setting the macro _FILE_OFFSET_BITS to
> 64. What is the best way to set this macro on Linux?

You can add it to your BUILD variable with

    bjam ... "-sBUILD=<define>_FILE_OFFSET_BITS ..." ...

Or you can put <define>_FILE_OFFSET_BITS in your project requirements
or default-BUILD.

> I have looked at the jam rules and cannot locate the appropriate
> place to include the definition. Also, what process should be
> followed if I want to have this macro defined either by default or
> at least as an option in the boost source tree so that I don't have
> to modify the build rules each time I install boost?

I don't understand what you have in mind.

-- 
Dave Abrahams
Boost Consulting
http://www.boost-consulting.com

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk