Fabien Potencier > Compress-unLZMA-0.01 > Compress::unLZMA



Annotate this POD


Open  0
View/Report Bugs
Module Version: 0.01   Source   Latest Release: Compress-unLZMA-0.05


Compress::unLZMA - Interface to LZMA decompression library


  use Compress::unLZMA qw(uncompress uncompressfile);
  my $data = uncompressfile('foo.lzma');
  my $data = uncompress($content);


LZMA is default and general compression method of 7z format in 7-Zip program. LZMA provides high compression ratio and very fast decompression.

This module is based on the LZMA SDK which provides a cross-platform implementation of the LZMA decompression algorithm in ANSI C.

From SDK lzma.txt file:

  LZMA decompression code was ported from original C++ sources to C.
  Also it was simplified and optimized for code size.
  But it is fully compatible with LZMA from 7-Zip.


$data = uncompress($content)

Uncompress $data. if successfull, it returns the uncompressed data. Otherwise it returns undef and $@ contains the error message.

The source buffer can be either be a scalar or a scalar reference.

$data = uncompressfile($file)

Uncompress the file $file. if successfull, it returns the uncompressed data. Otherwise it returns undef and $@ contains the error message.


This version only implements in-memory decompression (patches are welcomed).

There is no way to recognize a valid LZMA encoded file with the SDK. So, in some cases, you can crash your script if you try to uncompress a non valid LZMA encoded file.


Please report any requests, suggestions or bugs via the RT bug-tracking system at http://rt.cpan.org/ or email to bug-Compress-unLZMA\@rt.cpan.org.

http://rt.cpan.org/NoAuth/Bugs.html?Dist=Compress-unLZMA is the RT queue for Compress::unLZMA. Please check to see if your bug has already been reported.


Copyright 2004

Fabien Potencier, fabpot@cpan.org

This software may be freely copied and distributed under the same terms and conditions as Perl.


LZMA SDK 4.01 Copyright (C) 1999-2004 Igor Pavlov 2004-02-15

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.

LZMA SDK also can be available under a proprietary license for those who cannot use the GNU LGPL in their code. To request such proprietary license or any additional consultations, write to support@7-zip.org


perl(1), http://www.7-zip.org/.

syntax highlighting: