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.
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,
source to share
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.
source to share