First installed openssl and recompiled cd /usr/local/src wget https://www.openssl.org/source/openssl-1.0.2-latest.tar.gz # getting the openssl package tar -zxf openssl-1.0.2-latest.tar.gz # compiled and installed it. cd openssl-1.0.2a ./config make make test make install # moved old openssl and created openssl with symbolic link mv /usr/bin/openssl /root/ ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl #### cd /usr/local/include ln -s /usr/local/ssl/include/openssl At this point I re-ran 'perl MakeFile.PL' for Net::SSLeay. Now it say /usr/bin/ld: cannot find -lssl /usr/bin/ld: cannot find -lcrypto /usr/bin/ld: cannot find -lz collect2: error: ld returned 1 exit status Here is full notes # make test Running Mkbootstrap for SSLeay () chmod 644 "SSLeay.bs" "/usr/bin/perl" "-Iinc" -MExtUtils::Command::MM -e 'cp_nonempty' -- SSLeay.bs blib/arch/auto/Net/SSLeay/SSLeay.bs 644 gcc -c -D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -DVERSION=\"1.81\" -DXS_VERSION=\"1.81\" -fPIC "-I/usr/lib64/perl5/CORE" SSLeay.c SSLeay.xs: In function ‘ssleay_ctx_cert_verify_cb_invoke’: SSLeay.xs:675:10: warning: variable ‘ssl’ set but not used [-Wunused-but-set-variable] SSL *ssl; ^ SSLeay.xs: In function ‘next_proto_select_cb_invoke’: SSLeay.xs:917:12: warning: unused variable ‘n_a’ [-Wunused-variable] STRLEN n_a; ^ SSLeay.xs: In function ‘pem_password_cb_invoke’: SSLeay.xs:1116:12: warning: unused variable ‘n_a’ [-Wunused-variable] STRLEN n_a; ^ SSLeay.xs: In function ‘tlsext_ticket_key_cb_invoke’: SSLeay.xs:1288:2: warning: pointer targets in passing argument 2 of ‘Perl_newSVpv’ differ in signedness [-Wpointer-sign] XPUSHs(sv_2mortal(newSVpv(key_name,16))); ^ In file included from /usr/lib64/perl5/CORE/perl.h:5030:0, from SSLeay.xs:141: /usr/lib64/perl5/CORE/proto.h:2755:19: note: expected ‘const char * const’ but argument is of type unsigned char *’ PERL_CALLCONV SV* Perl_newSVpv(pTHX_ const char *const s, const STRLEN len) ^ In file included from /usr/lib64/perl5/CORE/perl.h:3436:0, from SSLeay.xs:141: /usr/lib64/perl5/CORE/sv.h:1567:5: warning: pointer targets in initialization differ in signedness [-Wpointer-sign] ((SvFLAGS(sv) & (SVf_POK)) == SVf_POK \ ^ /usr/lib64/perl5/CORE/sv.h:1562:22: note: in expansion of macro ‘SvPV_flags’ #define SvPV(sv, lp) SvPV_flags(sv, lp, SV_GMAGIC) ^ SSLeay.xs:1306:29: note: in expansion of macro ‘SvPV’ unsigned char *pname = SvPV(sname,svlen); ^ /usr/lib64/perl5/CORE/sv.h:1567:5: warning: pointer targets in initialization differ in signedness [-Wpointer-sign] ((SvFLAGS(sv) & (SVf_POK)) == SVf_POK \ ^ /usr/lib64/perl5/CORE/sv.h:1562:22: note: in expansion of macro ‘SvPV_flags’ #define SvPV(sv, lp) SvPV_flags(sv, lp, SV_GMAGIC) ^ SSLeay.xs:1319:28: note: in expansion of macro ‘SvPV’ unsigned char *pkey = SvPV(skey,svlen); ^ In file included from SSLeay.xs:142:0: SSLeay.c: In function ‘XS_Net__SSLeay_CLONE’: /usr/lib64/perl5/CORE/XSUB.h:164:20: warning: unused variable ‘items’ [-Wunused-variable] #define dITEMS I32 items = (I32)(SP - MARK) ^ /usr/lib64/perl5/CORE/XSUB.h:172:16: note: in expansion of macro ‘dITEMS’ dSP; dAXMARK; dITEMS ^ SSLeay.c:1632:11: note: in expansion of macro ‘dXSARGS’ dVAR; dXSARGS; ^ SSLeay.c: In function ‘XS_Net__SSLeay_read’: SSLeay.c:2403:7: warning: unused variable ‘RETVAL’ [-Wunused-variable] AV * RETVAL; ^ SSLeay.c: In function ‘XS_Net__SSLeay_get_shared_ciphers’: SSLeay.c:3156:6: warning: variable ‘ignored_param2’ set but not used [-Wunused-but-set-variable] int ignored_param2; ^ SSLeay.c:3155:6: warning: variable ‘ignored_param1’ set but not used [-Wunused-but-set-variable] int ignored_param1; ^ In file included from SSLeay.xs:142:0: SSLeay.c: In function ‘XS_Net__SSLeay_get_session’: /usr/lib64/perl5/CORE/XSUB.h:183:20: warning: unused variable ‘ix’ [-Wunused-variable] #define dXSI32 I32 ix = XSANY.any_i32 ^ SSLeay.c:3476:5: note: in expansion of macro ‘dXSI32’ dXSI32; ^ SSLeay.c: In function ‘XS_Net__SSLeay_FIPS_mode_set’: SSLeay.c:4410:6: warning: unused variable ‘onoff’ [-Wunused-variable] int onoff = (int)SvIV(ST(0)) ^ In file included from SSLeay.xs:142:0: SSLeay.c: In function ‘XS_Net__SSLeay_library_init’: /usr/lib64/perl5/CORE/XSUB.h:183:20: warning: unused variable ‘ix’ [-Wunused-variable] #define dXSI32 I32 ix = XSANY.any_i32 ^ SSLeay.c:4441:5: note: in expansion of macro ‘dXSI32’ dXSI32; ^ SSLeay.c: In function ‘XS_Net__SSLeay_P_ASN1_TIME_put2string’: /usr/lib64/perl5/CORE/XSUB.h:183:20: warning: unused variable ‘ix’ [-Wunused-variable] #define dXSI32 I32 ix = XSANY.any_i32 ^ SSLeay.c:7802:5: note: in expansion of macro ‘dXSI32’ dXSI32; ^ SSLeay.xs: In function ‘XS_Net__SSLeay_get_keyblock_size’: SSLeay.xs:5218:16: warning: unused variable ‘h’ [-Wunused-variable] const EVP_MD *h; ^ In file included from /usr/lib64/perl5/CORE/perl.h:5071:0, from SSLeay.xs:141: SSLeay.c: In function ‘XS_Net__SSLeay_OCSP_response_results’: /usr/lib64/perl5/CORE/embed.h:203:62: warning: ‘revocationTime’ may be used uninitialized in this function [-Wmaybe-uninitialized] #define hv_common_key_len(a,b,c,d,e,f) Perl_hv_common_key_len(aTHX_ a,b,c,d,e,f) ^ SSLeay.xs:6103:28: note: ‘revocationTime’ was declared here ASN1_GENERALIZEDTIME *revocationTime, *thisupdate, *nextupdate; ^ rm -f blib/arch/auto/Net/SSLeay/SSLeay.so LD_RUN_PATH="/usr/lib64" gcc -shared -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -Wl,-z,relro SSLeay.o -o blib/arch/auto/Net/SSLeay/SSLeay.so \ -L/usr -L/usr/lib64 -L/usr/lib -lssl -lcrypto -lz \ /usr/bin/ld: cannot find -lssl /usr/bin/ld: cannot find -lcrypto /usr/bin/ld: cannot find -lz collect2: error: ld returned 1 exit status make: *** [blib/arch/auto/Net/SSLeay/SSLeay.so] Error 1