[root@newserver Socket]# /root/scripts/filetest testfile.txt
Can't locate loadable object for module IO::Socket::Multicast in @INC (@INC
contains: /usr/local/lib64/perl5/IO/Socket /usr/local/lib64/perl5 /usr/local/share/perl5
/usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5

filetest is calling "use IO::Socket::Multicast;"

The contents of the directory /usr/local/lib64/perl5/IO/Socket is the following:

-rw-r--r--. 1 root root 12342 Mar 22  2017 INET.pm  
-rw-r--r--. 1 root root 14201 Nov 30 10:13 Multicast.pm  
-rw-r--r--. 1 root root  3111 Mar 22  2017 UNIX.pm

Why can't perl find the Multicast.pm?

  • did you install the multicast module first?are these two different modules? could there be another location for the modules? – Tux_DEV_NULL Nov 30 '17 at 18:13
  • It looks like you've mixed up a locally built copy of perl with the system perl? What is going on with this system? – Michael Hampton Nov 30 '17 at 19:01

I found the problem, the path to Multicast.pm was a symbolic link and it appears that Perl didn't like it. Once I removed the symlink and just copied the files I needed over it was fine.

| improve this answer | |
  • There is no sign of a symlink in your directory listing in the question. Are you sure? – chicks Dec 1 '17 at 2:57
  • If you're certain this actually worked, you can accept your own answer to resolve this post. – zymhan Dec 1 '17 at 14:23

Not the answer you're looking for? Browse other questions tagged or ask your own question.