[SLUG] Perl (or Zlib) giving me troubles

From: Eben King (eben01@verizon.net)
Date: Fri Dec 29 2006 - 21:22:00 EST


Hey SLUGgers.

I downloaded a DVD image meant for use with a Mac OS X system. For some
reason, they assume you have a working OS X system handy (I don't), so
it's a ".dmg" ("disk image") file. This is internally compressed (per
block I think) with gzip. Some nice person wrote "dmgtoiso", a small
utility which should do nothing more than soak up lots of CPU cycles and
decompress the image.

I'm trying to get the Perl version (dmgtoiso.pl) to work (already tried to
get the C++ one up... wouldn't compile). Likewise, Perl needs
Compress::Zlib.pm. I went to cpan.org, got the source here:
http://search.cpan.org/src/PMQS/Compress-Zlib-2.002/lib/Compress/Zlib.pm and
saved it as /usr/lib/perl/5.8.7/Compress/Zlib.pm (text, not HTML). Is that
correct? I don't speak Perl.

I see this:

eben@pc:~/src$ ./dmg2iso.pl --help
Can't locate auto/Compress/Zlib/autosplit.ix in @INC (@INC contains:
/etc/perl /usr/local/lib/perl/5.8.7 /usr/local/share/perl/5.8.7
/usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.8 /usr/share/perl/5.8
/usr/local/lib/site_perl .) at /usr/share/perl/5.8/AutoLoader.pm line 160.
  at /usr/lib/perl/5.8/Compress/Zlib.pm line 5
Can't locate IO/Compress/Base/Common.pm in @INC (@INC contains: /etc/perl
/usr/local/lib/perl/5.8.7 /usr/local/share/perl/5.8.7 /usr/lib/perl5
/usr/share/perl5 /usr/lib/perl/5.8 /usr/share/perl/5.8
/usr/local/lib/site_perl .) at /usr/lib/perl/5.8/Compress/Zlib.pm line 10.
BEGIN failed--compilation aborted at /usr/lib/perl/5.8/Compress/Zlib.pm line 10.
Compilation failed in require at ./dmg2iso.pl line 28.
BEGIN failed--compilation aborted at ./dmg2iso.pl line 28.
eben@pc:~/src$

Line 28 and surroundings in dmg2iso.pl are:

  24 @ISA = qw(Exporter);
  25 # Items to export into callers namespace by default. Note: do not export
  26 # names by default without a very good reason. Use EXPORT_OK instead.
  27 # Do not simply export all your public functions/methods/constants.
  28 @EXPORT = qw(
  29 deflateInit inflateInit
  30
  31 compress uncompress
  32
  33 gzopen $gzerrno
  34 );

Line 10 and surroundings in Zlib.pm are:

   3 require 5.004 ;
   4 require Exporter;
   5 use AutoLoader;
   6 use Carp ;
   7 use IO::Handle ;
   8 use Scalar::Util qw(dualvar);
   9
  10 use IO::Compress::Base::Common ;
  11 use Compress::Raw::Zlib;
  12 use IO::Compress::Gzip;
  13 use IO::Uncompress::Gunzip;

What should I look at?

What should I do about "Can't locate IO/Compress/Base/Common.pm in @INC"?
I don't think it's hiding under a different path, at least not there:

eben@pc:~/src$ find /usr/lib/perl/5.8.7 -name Common\*
eben@pc:~/src$

I can show the errors from compilation if the hive intelligence thinks I
have a better chance of making that work.

On a related subject, does anyone know another way of burning a dmg file,
without access to a Mac? Or should I give up on this quest, and run an
emulator for the several days it would take for it to decompress the file?

-- 
-eben   QebWenE01R@vTerYizUonI.nOetP   royalty.no-ip.org:81

Q: What kind of modem did Jimi Hendrix use? A: A purple Hayes. ----------------------------------------------------------------------- This list is provided as an unmoderated internet service by Networked Knowledge Systems (NKS). Views and opinions expressed in messages posted are those of the author and do not necessarily reflect the official policy or position of NKS or any of its employees.



This archive was generated by hypermail 2.1.3 : Fri Aug 01 2014 - 20:16:38 EDT