in reply to Re: How to open a file more than 2.6 GB?
in thread How to open a file more than 2.6 GB?

The platform information is: Machine hardware: sun4u OS version: 5.8 Processor type: sparc Hardware: SUNW,Ultra-5_10 The perl we use is 5.005_03. I will do some test later. Thank you!
  • Comment on Re^2: How to open a file more than 2.6 GB?

Replies are listed 'Best First'.
Re^3: How to open a file more than 2.6 GB?
by Perl Mouse (Chaplain) on Nov 29, 2005 at 11:01 UTC
    You might want to upgrade your Perl. From the current INSTALL file:
    =head3 Large file support. Since Perl 5.6.0, Perl has supported large files (files larger than 2 gigabytes), and in many common platforms like Linux or Solaris this support is on by default. This is both good and bad. It is good in that you can use large files, seek(), stat(), and -s them. It is bad in that if you are interfacing + Perl using some extension, the components you are connecting to must also be large file aware: if Perl thinks files can be large but the other parts of the software puzzle do not understand the concept, bad things will happen. One popular extension suffering from this ailment is the Apache extension mod_perl. There's also one known limitation with the current large files implementation: unless you also have 64-bit integers (see the next section), you cannot use the printf/sprintf non-decimal integer format +s like C<%x> to print filesizes. You can use C<%d>, though.
    This doesn't mean you can't get large file support on older versions of Perl, but you might have to recompile perl for that. Read the INSTALL file, and in your case, README.solaris might need a read as well.

    But you're much better of to upgrade. 5.005_03 dates from March 1999. Get at least 5.6.2, preferably 5.8.7. And you now have a reason to upgrade ;-)

    Perl --((8:>*