This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Update Compress-Raw-Zlib to CPAN version 2.033
[perl5.git] / cpan / Compress-Raw-Zlib / pod / FAQ.pod
1
2 =head1 NAME
3
4 Compress::Raw::Zlib::FAQ -- Frequently Asked Questions about Compress::Raw::Zlib
5
6 =head1 DESCRIPTION
7
8 Common questions answered.
9
10 =head2 Compatibility with Unix compress/uncompress.
11
12 This module is not compatible with Unix C<compress>.
13
14 If you have the C<uncompress> program available, you can use this to read
15 compressed files
16
17     open F, "uncompress -c $filename |";
18     while (<F>)
19     {
20         ...
21
22 Alternatively, if you have the C<gunzip> program available, you can use
23 this to read compressed files
24
25     open F, "gunzip -c $filename |";
26     while (<F>)
27     {
28         ...
29
30 and this to write compress files, if you have the C<compress> program
31 available
32
33     open F, "| compress -c $filename ";
34     print F "data";
35     ...
36     close F ;
37
38 =head2 Accessing .tar.Z files
39
40 See previous FAQ item.
41
42 If the C<Archive::Tar> module is installed and either the C<uncompress> or
43 C<gunzip> programs are available, you can use one of these workarounds to
44 read C<.tar.Z> files.
45
46 Firstly with C<uncompress>
47
48     use strict;
49     use warnings;
50     use Archive::Tar;
51
52     open F, "uncompress -c $filename |";
53     my $tar = Archive::Tar->new(*F);
54     ...
55
56 and this with C<gunzip>
57
58     use strict;
59     use warnings;
60     use Archive::Tar;
61
62     open F, "gunzip -c $filename |";
63     my $tar = Archive::Tar->new(*F);
64     ...
65
66 Similarly, if the C<compress> program is available, you can use this to
67 write a C<.tar.Z> file
68
69     use strict;
70     use warnings;
71     use Archive::Tar;
72     use IO::File;
73
74     my $fh = new IO::File "| compress -c >$filename";
75     my $tar = Archive::Tar->new();
76     ...
77     $tar->write($fh);
78     $fh->close ;
79
80 =head2 Zlib Library Version Support
81
82 By default C<Compress::Raw::Zlib> will build with a private copy of version
83 1.2.5 of the zlib library. (See the F<README> file for details of
84 how to override this behaviour)
85
86 If you decide to use a different version of the zlib library, you need to be
87 aware of the following issues
88
89 =over 5
90
91 =item *
92
93 First off, you must have zlib 1.0.5 or better.
94
95 =item *
96
97 You need to have zlib 1.2.1 or better if you want to use the C<-Merge>
98 option with C<IO::Compress::Gzip>, C<IO::Compress::Deflate> and
99 C<IO::Compress::RawDeflate>.
100
101 =back
102
103 =head1 SEE ALSO
104
105 L<Compress::Zlib>, L<IO::Compress::Gzip>, L<IO::Uncompress::Gunzip>, L<IO::Compress::Deflate>, L<IO::Uncompress::Inflate>, L<IO::Compress::RawDeflate>, L<IO::Uncompress::RawInflate>, L<IO::Compress::Bzip2>, L<IO::Uncompress::Bunzip2>, L<IO::Compress::Lzma>, L<IO::Uncompress::UnLzma>, L<IO::Compress::Xz>, L<IO::Uncompress::UnXz>, L<IO::Compress::Lzop>, L<IO::Uncompress::UnLzop>, L<IO::Compress::Lzf>, L<IO::Uncompress::UnLzf>, L<IO::Uncompress::AnyInflate>, L<IO::Uncompress::AnyUncompress>
106
107 L<Compress::Zlib::FAQ|Compress::Zlib::FAQ>
108
109 L<File::GlobMapper|File::GlobMapper>, L<Archive::Zip|Archive::Zip>,
110 L<Archive::Tar|Archive::Tar>,
111 L<IO::Zlib|IO::Zlib>
112
113 =head1 AUTHOR
114
115 This module was written by Paul Marquess, F<pmqs@cpan.org>. 
116
117 =head1 MODIFICATION HISTORY
118
119 See the Changes file.
120
121 =head1 COPYRIGHT AND LICENSE
122
123 Copyright (c) 2005-2011 Paul Marquess. All rights reserved.
124
125 This program is free software; you can redistribute it and/or
126 modify it under the same terms as Perl itself.
127