Tue Feb 07 11:34:00 2017: Request 120131 was acted upon. Transaction: Correspondence added by jrushwo...@divestco.com Queue: PAR-Packer Subject: Re: [rt.cpan.org #120131] PAR::Packer DynaLoader Problem On Strawberry Perl 5.24.1 Broken in: (no value) Severity: (no value) Owner: Nobody Requestors: jrushwo...@divestco.com Status: rejected Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=120131 >
Roderich, I tried the pp command with the --link libpng16-16__.dll option and found libpng16-16__.dll included with the executable (it definitely wasn't without the --link option) but running the executable on a Windows 10 machine with no Perl installed produced exactly the same error. It seems to me that e88b1fb1.xs.dll is some kind of dynamic file which gets created if Perl is installed but not if there is no Perl. ttfn jr Roderich Schupp via RT wrote: > <URL: https://rt.cpan.org/Ticket/Display.html?id=120131 > > > On 2017-02-06 22:26:13, jrushwo...@divestco.com wrote: >> This is the error message: >> >> Can't load >> 'C:\Users\NTHOMP~1\AppData\Local\Temp\par-6e74686f6d70736f6e\cache- >> a689a490f84fa6e443fb002bba992a32a268b542\e88b1fb1.xs.dll' >> for module Tk::PNG: load_file:The specified module could not be found >> at >> C:/Perl64/perl/lib/DynaLoader.pm line 193. > > Most likely the Perl "glue" library for Tk::PNG (probably called > .../TK/PNG/PNG.xs.dll) > is linked with the png library (included in Strawberry Perl as > c/bin/libpng16-16__.dl), > but this libpng isn't included in the executable generated by pp. > > PAR::Packer doesn't know about dependencies like this and never packs non-Perl > libraries unless explicitly told to do so. In this case > > pp --link libpng16-16__.dll ... > > should do the trick. You may verify that libpng gets packed by looking at the > output of > > unzip -l your.exe > > In general, if module Foo::Bar shows this problem, locate its "glue" library > .../Foo/Bar/Bar.xs.dll, then run > > objdump -ax ../Foo/Bar/Bar.xs.dll | perl -ne 'print if /DLL Name/' > > to show the libraries it is linked with, e.g. > > DLL Name: msvcrt.dll > DLL Name: libpng16-16__.dll > DLL Name: KERNEL32.dll > DLL Name: perl524.dll > > Ignore Windows system libraries like msvcrt.dll and KERNEL32.dll, also the > Perl shared library perl*.dll. The rest should be specified as --link's > on the pp command line. > > Cheers, Roderich > > > > > > -- James P. Rushworth Senior Support Analyst Divestco Geomatics P: 587-952-8168 www.divestco.com C: 403-370-0519 300, 520 - 3 Avenue SW F: 587-952-8372 Calgary, AB T2P 0R3 This e-mail is intended solely for the person or entity to which it is addressed and may contain confidential or privileged information. Any use of this e-mail by any other person is prohibited. If you have received this e-mail in error, please contact the sender. We honour similar requests relating to the privacy of email communications.