Roderich Schupp <roderich.sch...@googlemail.com> writes:

> On Tue, Apr 21, 2015 at 8:57 PM, Harald Jörg <harald.jo...@arcor.de>
> wrote:
>
>     The DLLs are the notorious libeay32_.dll and ssleay32_.dll. 
>
>     I guess zlib1_.dll, as used by Archive::Tar, is of the same
>     sort. Hmmm... I can --link them to the executable, but after
>     unpacking to tempdir they end up in a directory where apparently
>     Windows doesn't look for them.
>
> What command line did you use? I just tried:
>
>> pp -o ssleay.exe --link libeay32_.dll --link ssleay32_.dll -E "use
>> Net::SSLeay; say 'OK';
>
> And this places these dlls into shlib/MSWin32-x86-multi-thread-64int
> in the packed executable:
>
> $ unzip -l ssleay.exe | grep -i dll
> [...]
> shlib/MSWin32-x86-multi-thread-64int/libeay32_.dll
> shlib/MSWin32-x86-multi-thread-64int/ssleay32_.dll

Yes, that's what I had observed, too.

> And they will be extracted to the top level cache directory which is
> in the PATH when the executable is run.

Oh - I didn't know that.  So I re-ran the whole build procedure (still
using PAR 1.008), and indeed - it works just fine, for SSL and Zlib!

Apparently I had made some mistake during the build processes.  Probably
I re-built without the proper --link option, but still stared at the old
executable.  Then, after seeing the "library not found" error, I drew
the wrong conclusions and decided to use the workaround of copying the
DLLs to the directory where the executable sits.

 ### My apologies: pp works as desired with DLLs! ###

>     I can provide a list of CPAN module dependencies which
>     Module::ScanDeps doesn't find to its queue. However, these
>     dependencies are only required if certain conditions are met. For
>     applications where these conditions don't apply, the PAR gets
>     bloated without need.
>
> Please do - PAR::Packer (and Module::ScanDeps) try to err on the
> generous side.  For example, if there's the slightest whiff that a
> script might be using unicode stuff, the whole machinery will be
> included.

Ok then... I'll have a look what is required directly by the application
and what comes from CPAN modules.  Plack for sure falls into the "whole
machinery" category :)

Thanks again for your support!
--
Cheers,
haj

Reply via email to