Wed Mar 11 10:08:08 2015: Request 102690 was acted upon.
Transaction: Correspondence added by RSCHUPP
       Queue: PAR-Packer
     Subject: Error with packing Check.xs.dll
   Broken in: (no value)
    Severity: (no value)
       Owner: Nobody
  Requestors: z...@cpan.org
      Status: new
 Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=102690 >


Am 2015-03-11 09:17:58, ZDM schrieb:
> Can't load 'D:\tmp\par-7a646d\cache-1426079581\b61437bc.xs.dll' for
> module multidimensional: load_file:The specified module could not be
> found at d:/devel/p
> erl/perl/lib/DynaLoader.pm line 193.
>  at d:/devel/perl/perl/site/lib/PAR/Heavy.pm line 120.
> Compilation failed in require at script/1.pl line 5.
> BEGIN failed--compilation aborted at script/1.pl line 5.
> 
> b61437bc.xs.dll is the alias for auto/B/Hooks/OP/Check/Check.xs.dll

How did you determine this?

> But in PAR this is completely different file, than original. I don't
> know why, maybe you compress dlls or do something else, but this
> didn't work with this dll.

The only thing PAR::Packer does with DLLs (and most other files):
- it stores them into a zip file (using Archive::Zip)
- at runtime it extracts them under the mangled name, actually it uses
  the zip's crc32 checksum of the file as the mangled basename

Extract auto/B/Hooks/OP/Check/Check.xs.dll from your exe manually,

unzip 1.exe

and compare with the above cache file. If there different, it's 
an Archive::Zip problem. If there identical, my guess is that it's
Check.xs.dll compiled for a different Perl version (do you have
several Perl versions installed on your machine?). BTW, have you
checked that 1.pl works in unpacked form?

Cheers, Roderich




Reply via email to