I have a perl script that runs fine on Windows 10. But I am having a tough time getting it to run on the Mac High Sierra OS X platform. I installed all the different flavors of Perl, perl brew, etc and Xcode, Xcode tools, cpan, etc . . . But the script always stalls out because some dependency is not available.
The latest error says, " LWP will support https URLs if the LWP::Protocol::https module is installed.
So, in Terminal I enter, "sudo cpan LWP::Protocol::https", and get back a zillion lines of messages that I can neither makes heads or tails of. Partially reproduced below:
In Windows, the Perl script just runs fine. In Mac -- no way. I don't understand why it so difficult for Perl to run in the Mac OS X environment? Is it a permissions issue? Is it a path problem? I just don't know and feel so lost :(Loading internal logger. Log::Log4perl recommended for better logging Reading '/Users/dp/.cpan/Metadata' Database was generated on Wed, 04 Sep 2019 00:17:02 GMT Running install for module 'LWP::Protocol::https' Fetching with LWP: http://mirrors.sonic.net/cpan/authors/id/O/OA/OALDERS/LWP-Protocol-htt +ps-6.07.tar.gz Checksum for /Users/dp/.cpan/sources/authors/id/O/OA/OALDERS/LWP-Proto +col-https-6.07.tar.gz ok 'YAML' not installed, will not store persistent state Configuring O/OA/OALDERS/LWP-Protocol-https-6.07.tar.gz with Makefile. +PL Checking if your kit is complete... Looks good Warning: prerequisite IO::Socket::SSL 1.54 not found. Warning: prerequisite Mozilla::CA 20110101 not found. Generating a Unix-style Makefile Writing Makefile for LWP::Protocol::https Writing MYMETA.yml and MYMETA.json OALDERS/LWP-Protocol-https-6.07.tar.gz /Users/dp/perl5/perlbrew/perls/perl-5.28.0/bin/perl Makefile.PL -- O +K Running make for O/OA/OALDERS/LWP-Protocol-https-6.07.tar.gz ---- Unsatisfied dependencies detected during ---- ---- OALDERS/LWP-Protocol-https-6.07.tar.gz ---- IO::Socket::SSL [requires] Mozilla::CA [requires] Running install for module 'IO::Socket::SSL' Fetching with LWP: http://mirrors.sonic.net/cpan/authors/id/S/SU/SULLR/IO-Socket-SSL-2.06 +6.tar.gz Fetching with LWP: http://mirrors.sonic.net/cpan/authors/id/S/SU/SULLR/CHECKSUMS Checksum for /Users/dp/.cpan/sources/authors/id/S/SU/SULLR/IO-Socket-S +SL-2.066.tar.gz ok ---- Unsatisfied dependencies detected during ---- ---- SULLR/IO-Socket-SSL-2.066.tar.gz ---- Net::SSLeay [build_requires] Running install for module 'Net::SSLeay' Fetching with LWP: http://mirrors.sonic.net/cpan/authors/id/C/CH/CHRISN/Net-SSLeay-1.88.t +ar.gz Fetching with LWP: http://mirrors.sonic.net/cpan/authors/id/C/CH/CHRISN/CHECKSUMS Checksum for /Users/dp/.cpan/sources/authors/id/C/CH/CHRISN/Net-SSLeay +-1.88.tar.gz ok Configuring C/CH/CHRISN/Net-SSLeay-1.88.tar.gz with Makefile.PL Do you want to run external tests? These tests *will* *fail* if you do not have network connectivity. [n] + n *** Found LibreSSL-2.2.7 installed in /usr *** Be sure to use the same compiler and options to compile your OpenS +SL, perl, and Net::SSLeay. Mixing and matching compilers is not supported. Checking if your kit is complete... Looks good Generating a Unix-style Makefile Writing Makefile for Net::SSLeay Writing MYMETA.yml and MYMETA.json CHRISN/Net-SSLeay-1.88.tar.gz /Users/dp/perl5/perlbrew/perls/perl-5.28.0/bin/perl Makefile.PL -- O +K Running make for C/CH/CHRISN/Net-SSLeay-1.88.tar.gz cp lib/Net/SSLeay.pod blib/lib/Net/SSLeay.pod cp lib/Net/SSLeay/Handle.pm blib/lib/Net/SSLeay/Handle.pm cp lib/Net/SSLeay.pm blib/lib/Net/SSLeay.pm AutoSplitting blib/lib/Net/SSLeay.pm (blib/lib/auto/Net/SSLeay) blib/lib/Net/SSLeay.pm: some names are not unique when truncated to 8 +characters: directory blib/lib/auto/Net/SSLeay: do_https3.al, do_https2.al, do_https4.al, do_https.al truncate to do +_https do_httpx3.al, do_httpx2.al, do_httpx4.al truncate to do_httpx get_https.al, get_https3.al, get_https4.al, get_http.al, get_http3.a +l, get_http4.al, get_httpx.al, get_httpx3.al, get_httpx4.al truncate +to get_http head_https.al, head_https3.al, head_https4.al, head_http.al, head_ht +tp3.al, head_http4.al, head_httpx.al, head_httpx3.al, head_httpx4.al +truncate to head_htt post_https.al, post_https3.al, post_https4.al, post_http.al, post_ht +tp3.al, post_http4.al, post_httpx.al, post_httpx3.al, post_httpx4.al +truncate to post_htt put_https.al, put_https3.al, put_https4.al, put_http.al, put_http3.a +l, put_http4.al, put_httpx.al, put_httpx3.al, put_httpx4.al truncate +to put_http ssl_read_all.al, ssl_read_until.al, ssl_read_CRLF.al truncate to ssl +_read ssl_write_all.al, ssl_write_CRLF.al truncate to ssl_writ tcp_read_all.al, tcp_read_until.al, tcp_read_CRLF.al truncate to tcp +_read tcp_write_all.al, tcp_write_CRLF.al truncate to tcp_writ Running Mkbootstrap for SSLeay ()
In reply to Running perl script on Mac -- so frustrating by packzap
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |