• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

fallback/H20-Feb-2021-1,068830

lib/Compress/Raw/H20-Feb-2021-1,721654

private/H20-Feb-2021-382264

t/H20-Feb-2021-5,8033,058

ChangesH A D20-Feb-20216.9 KiB311184

Lzma.xsH A D18-Dec-202035.3 KiB1,4771,120

MANIFESTH A D18-Dec-2020558 2928

META.jsonH A D20-Feb-20211.2 KiB5150

META.ymlH A D20-Feb-2021758 2827

Makefile.PLH A D31-Oct-20207.6 KiB350231

READMEH A D20-Feb-20216.7 KiB216141

config.inH A D31-Oct-2020552 2420

ppport.hH A D16-Mar-2019181.8 KiB7,4133,115

typemapH A D31-Oct-20202.8 KiB12799

README

1
2                            Compress-Raw-Lzma
3
4                              Version 2.101
5
6                            20 Feburary 2021
7
8        Copyright (c) 2009-2021 Paul Marquess. All rights reserved.
9          This program is free software; you can redistribute it
10           and/or modify it under the same terms as Perl itself.
11
12DESCRIPTION
13-----------
14
15This module provides a Perl interface to allow reading and writing of lzma, lzip
16and xz files/buffers.
17
18PREREQUISITES
19-------------
20
21Before you can build Compress-Raw-Lzma you need to have the following
22installed on your system:
23
24    * A C compiler
25
26    * Perl 5.006 or better.
27
28    * A copy of liblzma
29      liblzma is part of the XZ Utils which is available at
30
31            http://tukaani.org/xz/
32
33Next you must edit the file config.in that comes with this distribution.
34If necessary, change the INCLUDE and LIB variable to the directories where
35liblzma and the lzma include file are installed.
36
37BUILDING THE MODULE
38-------------------
39
40Assuming you have met all the prerequisites, the module can now be built
41using this sequence of commands:
42
43    perl Makefile.PL
44    make
45    make test
46
47INSTALLATION
48------------
49
50To install Compress-Raw-Lzma, run the command below:
51
52    make install
53
54TROUBLESHOOTING
55---------------
56
57Test harness fails with: Undefined symbol "lzma_properties_size"
58----------------------------------------------------------------
59
60If the module appears to have built correctly, but the t/001version.t test
61harness fails with the error
62
63    Undefined symbol "lzma_properties_size"
64
65it means you have two libraries called liblzma installed on your system.
66
67The version of liblzma used by this module comes from http://tukaani.org/xz/.
68
69There is another distribution, that comes from
70http://tokyocabinet.sourceforge.net/misc/ that also builds a library called
71liblzma.  The tokyocabinet version of liblzma is not compatible with this
72module.  Note that the Perl module Compress-Lzma-Simple uses the
73tokyocabinet version of liblzma.
74
75The solution is either:
76
77    1. Set the LIB variable in config.in to point to the directory where
78       the correct liblzma library is installed.
79
80    2. Remove the offending version of liblzma.
81
82Solaris build fails with "language optional software package not installed"
83---------------------------------------------------------------------------
84
85If you are trying to build this module under Solaris and you get an
86error message like this
87
88    /usr/ucb/cc: language optional software package not installed
89
90it means that Perl cannot find the C compiler on your system. The cryptic
91message is just Sun's way of telling you that you haven't bought their
92C compiler.
93
94When you build a Perl module that needs a C compiler, the Perl build
95system tries to use the same C compiler that was used to build perl
96itself. In this case your Perl binary was built with a C compiler that
97lived in /usr/ucb.
98
99To continue with building this module, you need to get a C compiler,
100or tell Perl where your C compiler is, if you already have one.
101
102Assuming you have now got a C compiler, what you do next will be dependent
103on what C compiler you have installed. If you have just installed Sun's
104C compiler, you shouldn't have to do anything. Just try rebuilding
105this module.
106
107If you have installed another C compiler, say gcc, you have to tell perl
108how to use it instead of /usr/ucb/cc.
109
110This set of options seems to work if you want to use gcc. Your mileage
111may vary.
112
113    perl Makefile.PL CC=gcc CCCDLFLAGS=-fPIC OPTIMIZE=" "
114    make test
115
116If that doesn't work for you, it's time to make changes to the Makefile
117by hand. Good luck!
118
119Solaris build fails with "gcc: unrecognized option `-KPIC'"
120-----------------------------------------------------------
121
122You are running Solaris and you get an error like this when you try to
123build this Perl module
124
125    gcc: unrecognized option `-KPIC'
126
127This symptom usually means that you are using a Perl binary that has been
128built with the Sun C compiler, but you are using gcc to build this module.
129
130When Perl builds modules that need a C compiler, it will attempt to use
131the same C compiler and command line options that was used to build perl
132itself. In this case "-KPIC" is a valid option for the Sun C compiler,
133but not for gcc. The equivalent option for gcc is "-fPIC".
134
135The solution is either:
136
137    1. Build both Perl and this module with the same C compiler, either
138       by using the Sun C compiler for both or gcc for both.
139
140    2. Try generating the Makefile for this module like this perl
141
142           perl Makefile.PL CC=gcc CCCDLFLAGS=-fPIC OPTIMIZE=" " LD=gcc
143           make test
144
145       This second option seems to work when mixing a Perl binary built
146       with the Sun C compiler and this module built with gcc. Your
147       mileage may vary.
148
149HP-UX Notes
150-----------
151
152I've had a report that when building Compress-Raw-Lzma under HP-UX that it
153is necessary to have first built the lzma library with the -fpic
154option.
155
156SUPPORT
157-------
158
159General feedback/questions/bug reports should be sent to
160https://github.com/pmqs/Compress-Raw-Lzma/issues (preferred) or
161https://rt.cpan.org/Public/Dist/Display.html?Name=Compress-Raw-Lzma.
162
163FEEDBACK
164--------
165
166How to report a problem with Compress-Raw-Lzma.
167
168To help me help you, I need all of the following information:
169
170 1. The Versions of everything relevant.
171    This includes:
172
173     a. The *complete* output from running this
174
175            perl -V
176
177        Do not edit the output in any way.
178        Note, I want you to run "perl -V" and NOT "perl -v".
179
180        If your perl does not understand the "-V" option it is too
181        old. This module needs Perl version 5.004 or better.
182
183     b. The version of Compress-Raw-Lzma you have.
184        If you have successfully installed Compress-Raw-Lzma, this one-liner
185        will tell you:
186
187           perl -MCompress::Raw::Lzma -e 'print qq[ver $Compress::Raw::Lzma::VERSION\n]'
188
189        If you are  running windows use this
190
191           perl -MCompress::Raw::Lzma -e "print qq[ver $Compress::Raw::Lzma::VERSION\n]"
192
193        If you haven't installed Compress-Raw-Lzma then search Compress::Raw::Lzma.pm
194        for a line like this:
195
196          $VERSION = "2.101" ;
197
198     c. The version of lzma you have used.
199        If you have successfully installed Compress-Raw-Lzma, this one-liner
200        will tell you:
201
202          perl -MCompress::Raw::Lzma -e "print q[lzma ver ]. Compress::Raw::Lzma::ZLIB_VERSION.qq[\n]"
203
204        If not, look at the beginning of the file zlib.h.
205
206 2. If you are having problems building Compress-Raw-Lzma, send me a
207    complete log of what happened. Start by unpacking the Compress-Raw-Lzma
208    module into a fresh directory and keep a log of all the steps
209
210        [edit config.in, if necessary]
211        perl Makefile.PL
212        make
213        make test TEST_VERBOSE=1
214
215Paul Marquess <pmqs@cpan.org>
216