This is an odd situation and I'm just about at wit's end...

On HP/UX we have some perl scripts to communicate via LWP::UserAgent.

Some users can run the script, no problem; others get the following error:

Socket object version 1.94 does not match bootstrap parameter 2.006 at + /opt/perl514/lib/5.14.2/PA-RISC2.0-thread-multi/DynaLoader.pm line 2 +13. Compilation failed in require at /opt/perl514/lib/5.14.2/PA-RISC2.0-th +read-multi/IO/Socket.pm line 12. BEGIN failed--compilation aborted at /opt/perl514/lib/5.14.2/PA-RISC2. +0-thread-multi/IO/Socket.pm line 12.

Where it dies is on "require IO::Socket" (or anything that pulls in "Socket.pm").

In trying to debug this, we've dumped lots of environment variables and @INC and %INC at various stages. All users show they're using /opt/perl514/lib/... for loading libraries.

So for debugging output we generated a listing of loaded modules based on keys %INC:

foreach my $file ( sort keys %INC ) { my $mod = "$file"; next unless $mod =~ s/[.]pm$//; $mod =~ s{/}{::}g; my $ver = eval('$' . $mod . '::VERSION or "[unknown]"'); push @output, [ $mod, $ver ]; } ...

Users who CAN run the script have these modules loaded right before "require IO::Socket":

AutoLoader 5.71 Carp 1.20 Compress::Raw::Zlib 2.045 Config [unknown] Crypt::SSLeay 0.58 Crypt::SSLeay::CTX [unknown] Crypt::SSLeay::MainContext [unknown] Crypt::SSLeay::X509 [unknown] Errno 1.13 Exporter 5.64_03 Exporter::Heavy 5.64_03 Fcntl 1.11 File::Glob 1.13 File::GlobMapper 1.000 File::Spec 3.33 File::Spec::Unix 3.33 Getopt::Std 1.06 HTTP::Config 5.815 HTTP::Date 5.831 HTTP::Headers 5.827 HTTP::Message 5.834 HTTP::Request 5.827 HTTP::Response 5.824 HTTP::Status 5.817 IO 1.25_04 IO::Compress::Base::Common 2.045 IO::Compress::Gzip::Constants 2.045 IO::Compress::Zlib::Extra 2.045 IO::File 1.15 IO::Handle 1.31 IO::Seekable 1.1 IO::Socket 1.32 IO::Socket::INET 1.31 IO::Socket::UNIX 1.23 IO::Uncompress::Adapter::Inflate 2.045 IO::Uncompress::Base 2.046 IO::Uncompress::Gunzip 2.045 IO::Uncompress::RawInflate 2.045 LWP 5.834 LWP::MemberMixin [unknown] LWP::Protocol 5.829 LWP::Protocol::http [unknown] LWP::Protocol::https [unknown] LWP::UserAgent 5.834 List::Util 1.23 MIME::Base64 3.13 Net::HTTP 5.834 Net::HTTP::Methods 5.834 Net::HTTPS 5.819 Net::SSL 2.85 Scalar::Util 1.23 SelectSaver 1.02 Socket 2.006 Storable 2.30 Symbol 1.07 Time::Local 1.2000 URI 1.59 URI::Escape 3.31 URI::_generic [unknown] URI::_idna [unknown] URI::_punycode 0.04 URI::_query [unknown] URI::_server [unknown] URI::http [unknown] URI::https [unknown] XSLoader 0.13 bytes 1.04 constant 1.21 feature 1.20 integer 1.00 overload 1.13 strict 1.04 utf8 1.09 vars 1.02 warnings 1.12 warnings::register 1.02

By contrast, the users who CANNOT run the script, have these modules loaded instead -- e.g. DynaLoader instead of AutoLoader?

Carp 1.20 Config [unknown] DynaLoader 1.13 Errno 1.13 Exporter 5.64_03 Exporter::Heavy 5.64_03 Fcntl 1.11 Getopt::Std 1.06 HTTP::Config 5.815 HTTP::Date 5.831 HTTP::Headers 5.827 HTTP::Message 5.834 HTTP::Request 5.827 HTTP::Response 5.824 HTTP::Status 5.817 IO 1.25_04 IO::Handle 1.31 IO::Socket [unknown] IO::Socket::INET [unknown] LWP 5.834 LWP::MemberMixin [unknown] LWP::Protocol 5.829 LWP::Protocol::http [unknown] LWP::Protocol::https [unknown] LWP::UserAgent 5.834 MIME::Base64 3.13 Net::HTTP 5.834 SelectSaver 1.02 Socket 2.006 Storable 2.30 Symbol 1.07 Time::Local 1.2000 URI 1.59 URI::Escape 3.31 URI::_generic [unknown] URI::_idna [unknown] URI::_punycode 0.04 URI::_query [unknown] URI::_server [unknown] URI::http [unknown] URI::https [unknown] XSLoader 0.13 constant 1.21 integer 1.00 overload 1.13 strict 1.04 vars 1.02 warnings 1.12 warnings::register 1.02

All module-paths (from values %INC) are /opt/perl514/lib/...

Suggestions?


In reply to Attempt to reload IO/Socket.pm aborted by trillich

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.