Beefy Boxes and Bandwidth Generously Provided by pair Networks
Problems? Is your data what you think it is?
 
PerlMonks  

Infuriating Modules Dependency Question

by clegane (Novice)
on Aug 20, 2013 at 19:41 UTC ( [id://1050234]=perlquestion: print w/replies, xml ) Need Help??

clegane has asked for the wisdom of the Perl Monks concerning the following question:

I have a script that uses REST::Client. So I downloaded that module from here: http://search.cpan.org/~mcrawfor/REST-Client/lib/REST/Client.pm.

However, that module apparently has a dependency, Crypt::SSLeay. So, I downloaded the dependency from here: http://search.cpan.org/~nanis/Crypt-SSLeay/SSLeay.pm.

After moving the items in each package's "lib" folder into my PERL lib folder, I'm getting: "Can't locate Crypt/SSLeay.pm in @INC". Sure enough, that file, Crypt/SSLeay.pm, doesn't exist in the SSLeay module.

What am I doing wrong?

  • Comment on Infuriating Modules Dependency Question

Replies are listed 'Best First'.
Re: Infuriating Modules Dependency Question
by moritz (Cardinal) on Aug 20, 2013 at 20:00 UTC
    What am I doing wrong?

    You aren't using the tools that make installing a module easy. It can be as simple as typing

    cpan install REST::Client

    in your shell. If you have trouble with it, please search perlmonks for the various questions and tutorials about module installation.

      Thanks for the reply! Wow, I didn't realize that the cpan command could install packages automagically. Doh! Anyway, I ran 'install REST::Client' within the cpan terminal. That went fine. My script still failed as expected, complaining about SSLeay.pm missing. So I ran 'install Crypt::SSLeay' within cpan. It failed, giving me the error message below. Thoughts?

      Set up gcc environment - gcc.exe (rubenvb-4.5.4) 4.5.4 The test suite can attempt to connect to public servers to ensure that + the code is working properly. If you are behind a strict firewall or have +no network connectivity, these tests may fail (through no fault of the co +de). Do you want to run the live tests (y/N)? [N] y Checking if your kit is complete... Looks good Note (probably harmless): No library found for -lz Note (probably harmless): No library found for -lssl Note (probably harmless): No library found for -lcrypto Note (probably harmless): No library found for -lssl32 Note (probably harmless): No library found for -lssleay32 Note (probably harmless): No library found for -leay32 Note (probably harmless): No library found for -lkernel32 Note (probably harmless): No library found for -luser32 Note (probably harmless): No library found for -lgdi32 Note (probably harmless): No library found for -lwinspool Note (probably harmless): No library found for -lcomdlg32 Note (probably harmless): No library found for -ladvapi32 Note (probably harmless): No library found for -lshell32 Note (probably harmless): No library found for -lole32 Note (probably harmless): No library found for -loleaut32 Note (probably harmless): No library found for -lnetapi32 Note (probably harmless): No library found for -luuid Note (probably harmless): No library found for -lws2_32 Note (probably harmless): No library found for -lmpr Note (probably harmless): No library found for -lwinmm Note (probably harmless): No library found for -lversion Note (probably harmless): No library found for -lodbc32 Note (probably harmless): No library found for -lodbccp32 Note (probably harmless): No library found for -lcomctl32 Note (probably harmless): No library found for -lmsvcrt Writing Makefile for Crypt::SSLeay Writing MYMETA.yml and MYMETA.json cp lib/Crypt/SSLeay/X509.pm blib\lib\Crypt\SSLeay\X509.pm cp lib/Net/SSL.pm blib\lib\Net\SSL.pm cp SSLeay.pm blib\lib\Crypt\SSLeay.pm cp lib/Crypt/SSLeay/Conn.pm blib\lib\Crypt\SSLeay\Conn.pm cp lib/Crypt/SSLeay/CTX.pm blib\lib\Crypt\SSLeay\CTX.pm cp lib/Crypt/SSLeay/MainContext.pm blib\lib\Crypt\SSLeay\MainContext.p +m cp lib/Crypt/SSLeay/Err.pm blib\lib\Crypt\SSLeay\Err.pm C:\Perl64\bin\perl.exe C:\Perl64\lib\ExtUtils\xsubpp -typemap C:\Perl +64\lib\Ext Utils\typemap -typemap typemap SSLeay.xs > SSLeay.xsc && C:\Perl64\bi +n\perl.exe -MExtUtils::Command -e mv -- SSLeay.xsc SSLeay.c C:\Perl64\site\bin\gcc.exe -c -DNDEBUG -DWIN32 -D_CONSOLE -D +NO_STRICT -DWIN64 -DCONSERVATIVE -DPERL_TEXTMODE_SCRIPTS -DUSE_SITECUSTOMIZE -DP +ERL_IMPLIC IT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -DHASATTRIBUTE -fno-strict +-aliasing -mms-bitfields -O2 -DVERSION=\"0.64\" -DXS_VERSION=\"0.64\" + "-IC:\Per l64\lib\CORE" SSLeay.c SSLeay.xs:35:25: fatal error: openssl/ssl.h: No such file or directory compilation terminated. dmake.exe: Error code 129, while making 'SSLeay.o' NANIS/Crypt-SSLeay-0.64.tar.gz C:\Perl64\site\bin\dmake.exe -- NOT OK Running make test Can't test without successful make Running make install Make had returned bad status, install seems impossible Failed during this command: NANIS/Crypt-SSLeay-0.64.tar.gz : make NO
        Did you read the documentation for Crypt::SSLeay?

        You must have OpenSSL installed before compiling this module. You can get the latest OpenSSL package from http://www.openssl.org/.
        Do you have OpenSSL installed?

        CountZero

        A program should be light and agile, its subroutines connected like a string of pearls. The spirit and intent of the program should be retained throughout. There should be neither too little or too much, neither needless loops nor useless variables, neither lack of structure nor overwhelming rigidity." - The Tao of Programming, 4.1 - Geoffrey James

        My blog: Imperial Deltronics
Re: Infuriating Modules Dependency Question
by toolic (Bishop) on Aug 20, 2013 at 19:59 UTC
    What am I doing wrong?
    You are not showing us the relevant perl code that generates that error. Note that the POD for Crypt::SSLeay does not have use Crypt::SSLeay;, if that's what you are trying to do.

    As an aside, for installing modules along with dependencies, you could use cpan

Re: Infuriating Modules Dependency Question
by 2teez (Vicar) on Aug 20, 2013 at 20:28 UTC

    You can also take a look at using App::cpanminus for installation.

    If you tell me, I'll forget.
    If you show me, I'll remember.
    if you involve me, I'll understand.
    --- Author unknown to me

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlquestion [id://1050234]
Approved by toolic
Front-paged by derby
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others pondering the Monastery: (4)
As of 2024-04-19 20:51 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found