Thank you for the explanation (again) I'm looping on the points 1 to 4 without luck, yet. All the DLL of the world appear to be linked :-P
My current pp is: pp -I lib -l lixml2-2_.dll -l ssleay32_.dll -l libgcc_S_sjlj-1.dll -M XML::SAX::PurePerl -M XML::LibXML::SAX -M Net::SSL -M Crypt::Blowfish ... It makes sense to unzip the version 5.10 and try to identify the DLLs (with similar names) that I should link on 5.20? Peco 2014-12-12 21:39 GMT+01:00 Roderich Schupp <[email protected]>: > > On Fri, Dec 12, 2014 at 7:23 PM, Juan José 'Peco' San Martín < > [email protected]> wrote: >> >> After some analysis work, saw that in Strawberry I need to pass the >> parameter: -I lib -l libxml2-2_.dll to work with XML files. >> >> (not sure why it wasn't needed with ActiveState Perl :-?) >> > > It's probably not ActiveState vs Strawberry, but related to how stuff was > built/packaged for Perl 5.10 vs 5.20... > > Anyway, I've explained the issue in a previous post to this mailing list > > http://www.nntp.perl.org/group/perl.par/2014/10/msg5853.html > > The actual problem there was different, but the general explanation still > holds: > If a Perl XS module links to "other" DLLs then these are never implicitly > packed by PAR::Packer, > instead you must figure them out for yourself and explicitly add them on > the pp command (using option -l). > > By "other" I don't mean the XS "glue" DLL, eg. XML::LibXML installs the > "glue" DLL .../auto/XML/LibXML/LibXML.dll. > This in turn is linked against the actual (written in C) DLL from the > Gnome libxml2 library, libxml2-2_.dll or similar - > that's the "other" DLL. > > Now, I have some issues with LWP::Protocol::http.pm ... perhaps related >> to SSL (https) and the need to pass another DDL to pp. >> > > Any SSL related problems with LWP can most likely be traced back to > Net::SSleay: it's "glue" DLL, > ...auto/Net/SSLeay/SSLeay.dll, is linked against libssl and libcrypto from > the OpenSSL project. > Note that these DLLs are typically named a bit differently on Windows > systems, eg. ssleay32_.dll and libeay32_.dll. > To further complicate things, these DLLs might even be linked to other > DLLs: libeay32_dll is typically > linked against zlib1_.dll or similar. If that's the case, then you must > explicitly pack it, too. > >> >> So, I wondering if exists a way to detect the missing Libs and how they >> are called in Strawberry Perl. >> > > Follow steps 1 thru 4 in the above post :) > > Cheers, Roderich > >
