hmpf.  Yes, I see what you mean.
I am using ScanDeps '0.42';, perl 5.8.2, Windows XP, PAR 0.83
and Zip.pm $VERSION = "1.10";

C:\a\temp>type hello.pl
use Storable;
print "hello, world\n";

C:\a\temp>hello.pl
hello, world

C:\a\temp>pp -n -c -o hello.exe hello.pl

C:\a\temp>hello
mkdir
C:\DOCUME~1\malcolm\LOCALS~1\Temp\par-malcolm\cache-370b91604073c812a323d726
bf8914a0d5646123\inc\lib\C:\: Invalid
argument at C:/perl/site/lib/Archive/Zip.pm line 1516


To add to confusion, line 1516 of Zip.pm is not a mkdir statement.  It is
 my $mday = ( ( $dt >> 16 ) & 0x1f );

----- Original Message ----- 
From: "Roderich Schupp" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Monday, June 07, 2004 11:06 AM
Subject: Problems with "pp -c ..."



Hi,
the following program

use Storable;
print "hello, world\n";

has problems when packed with

$ pp -n -c -o hello.exe hello.pl

Running hello.exe gets:

mkdir
C:\DOCUME~1\qx06959\LOCALS~1\Temp\par-qx06959\cache-e44c2953061488246fa9
ee
5f9c4cd5172ce53917\inc\lib\C:\: Invalid argument at
C:/local-programs/Perl/site/
lib/Archive/Zip.pm line 1761

Listing hello.exe with unzip -l shows a strange member:

Archive:  hello.exe
 Length    Date    Time    Name
 ------    ----    ----    ----
      0  06-07-04  16:48   lib/
      0  06-07-04  16:48   script/
     15  06-07-04  16:48   MANIFEST
     15  06-07-04  16:48   META.yml
   5154  06-07-04  16:48   lib/AutoLoader.pm
    548  06-07-04  16:48
lib/C:/local-programs/Perl/lib/auto/Storable/autosplit.ix  <=====
   3734  06-07-04  16:48   lib/Carp.pm
  31212  06-07-04  16:48   lib/Config.pm
  14552  06-07-04  16:48   lib/DynaLoader.pm
   2348  06-07-04  16:48   lib/Exporter.pm
   6534  06-07-04  16:48   lib/Exporter/Heavy.pm
   3679  06-07-04  16:48   lib/Fcntl.pm
   8642  06-07-04  16:48   lib/Storable.pm
   2925  06-07-04  16:48   lib/XSLoader.pm
      0  02-03-04  01:32   lib/auto/Fcntl/Fcntl.bs
  24647  02-03-04  01:32   lib/auto/Fcntl/Fcntl.dll
      0  02-03-04  01:33   lib/auto/Storable/Storable.bs
  61517  02-03-04  01:33   lib/auto/Storable/Storable.dll
    669  06-07-04  16:48   lib/strict.pm
   1225  06-07-04  16:48   lib/vars.pm
  13243  06-07-04  16:48   lib/warnings.pm
    829  06-07-04  16:48   lib/warnings/register.pm
     38  06-07-04  16:47   script/hello.pl
    262  06-07-04  16:48   script/main.pl
 ------                    -------
 181788                    24 files

This is for PAR 0.83, Module::ScanDeps 0.43 on Windows XP with Perl
5.8.3.
On Solaris with Perl 5.6.1, autosplit.ix is correctly named
lib/auto/Storable/autosplit.ix in the zip archive.

Now, for "pp -c ..." (or "pp -x ...") Module::ScanDeps dumps the
contents of %INC after compilation (or execution). *.ix and *.al
are special, because they show up in %INC as e.g.

C:/local-programs/Perl/lib/auto/Storable/autosplit.ix =>
C:/local-programs/Perl/lib/auto/Storable/autosplit.ix

while *.pm files show up as e.g.

Storable.pm => C:/local-programs/Perl/lib/Storable.pm

This holds for both Unix and Windows, but on Unix the keys obviously
get cleaned up, while they are passed unchanged on Windows creating the
strange archive member.

Cheers, Roderich





------------------------------------------------------------------ 
sw-engineering & production environment at BMW group
------------------------------------------------------------------ 
roderich schupp (argumentum gmbh)
[EMAIL PROTECTED]
+49 (0)89 382-34944
http://www3.muc/bereiche/zentrale_iv/sw-engineering/km/continuus/german/
index4.htm
------------------------------------------------------------------

Reply via email to