Why is DynaLoader.pm not loading SSleay.dll for Net :: SSLeay and Crypt :: SSLeay?

I have Perl v5.10. I am trying to install Net :: SSLeay 1.30 and Crypt :: SSLeay 0.57. I have already installed OpenSSL 0.9.8e.

For Net :: SSLeay 1.30, I followed these steps:

perl Makefile.PL -windows C: \ openssl
nmake
nmake test - test fails
nmake install

perl test.pl

but i got fatal error:

D: \ perl \ Net_SSLeay.pm-1.30> perl -w test.pl
1..20
Can't load 'D: /perl/site/lib/auto/Net/SSLeay/SSLeay.dll' for module Net :: SSLeay: load_file: The specified module could not be found at D: / perl / lib / DynaLoader. pm line 203.
 at test.pl line 25
Compilation failed in require at test.pl line 25.
BEGIN failed - compilation aborted at test.pl line 25.

I got the same results for Crypt :: SSLeay 0.57.

+1


source to share


2 answers


Randy Kobes has an answer for this on the Perl Win32 mailing list . Does your PATH environment variable contain the directory containing libeay32.dll or ssleay32.dll?

There are many other answers you can find on Google. In such cases, I take the error message and paste it into the google search bar. I start to cut out parts of the error message, such as specific paths, until I get some search results . This almost always works for me, as I am rarely the first person to have a problem.



Good luck,

+3


source


Shared libraries often have external dependencies, and on some operating systems these dependencies must be met immediately when the first shared library is loaded, such as yours SSLeay.dll

, which usually requires two crypto libraries. On linux, you can check with ldd

runtime behavior if all libraries are found.



To debug this add env var PERL_DL_DEBUG = 5 for example set PERL_DL_DEBUG=5

and try again or use an external tool depends.exe

to see exactly what the dll is missing.

0


source







All Articles