All,
Any ideas would be much appreciated! thanks!
I have having issues using this module I installed. The module is
Net::IPv4Addr.
Here is my code
use strict;
use warnings;
use diagnostics;
use Net::IPv4Addr qw( :all );
my $var = "23.23.109.103";
print "$var\n";
#if ($var =~ m/^\d+$/) {
#if ($var !~ /\D/) {
if ( $var = ipv4_checkip ($var)) {
print "your variable is a number $var\n";
} else {
print "number $var is not a number\n";
}
Here is my PERL5LIB path
/usr/local/lib:/usr/local/lib/perl5/5.8.0:/usr/local/lib/perl5/5.8.0/sun4-solaris/CORE:/us
r/local/lib/perl5/site_perl/5.8.0/MIME:/usr/local/lib/perl5/5.8.0/CGI/:/usr/local/bin/perl
d/modules/Net-IPv4Addr-0.09/blib/script
Here are the errors
Use of inherited AUTOLOAD for non-method Net::IPv4Addr::ipv4_checkip() is
deprecated at number_test.pl line 15 (#1)
(D deprecated) As an (ahem) accidental feature, AUTOLOAD subroutines
are looked up as methods (using the @ISA hierarchy) even when the
subroutines to be autoloaded were called as plain functions (e.g.
Foo::bar()), not as methods (e.g. < Foo-bar() >> or <
$obj-bar() >>).
This bug will be rectified in future by using method lookup only for
methods' AUTOLOADs. However, there is a significant base of existing
code that may be using the old behavior. So, as an interim step, Perl
currently issues an optional warning when non-methods use inherited
AUTOLOADs.
The simple rule is: Inheritance will not work when autoloading
non-methods. The simple fix for old code is: In any module that used
to depend on inheriting AUTOLOAD for non-methods from a base class
named BaseClass, execute *AUTOLOAD = \&BaseClass::AUTOLOAD during
startup.
In code that currently says use AutoLoader; @ISA = qw(AutoLoader);
you should remove AutoLoader from @ISA and change use AutoLoader; to
use AutoLoader 'AUTOLOAD';.
Can't locate auto/Net/IPv4Addr/ipv4_checki.al in @INC (@INC contains:
/usr/local/lib /usr/local/lib/perl5/5.8.0/sun4-solaris
/usr/local/lib/perl5/5.8.0
/usr/local/lib/perl5/5.8.0/sun4-solaris/CORE
/usr/local/lib/perl5/site_perl/5.8.0/MIME /us
r/local/lib/perl5/5.8.0/CGI/
/usr/local/bin/perld/modules/Net-IPv4Addr-0.09/blib/script /u
sr/local/lib/perl5/5.8.0/sun4-solaris /usr/local/lib/perl5/5.8.0
/usr/local/lib/perl5/site
_perl/5.8.0/sun4-solaris /usr/local/lib/perl5/site_perl/5.8.0
/usr/local/lib/perl5/site_pe
rl .) at number_test.pl line 15 (#2)
(F) You said to do (or require, or use) a file that couldn't be
found. Perl looks for the file in all the locations mentioned in @INC,
unless the file name included the full path to the file. Perhaps you
need to set the PERL5LIB or PERL5OPT environment variable to say where
the extra library is, or maybe the script needs to add the library
name
to @INC. Or maybe you just misspelled the name of the file. See
perlfunc/require and lib.
Uncaught exception from user code:
Can't locate auto/Net/IPv4Addr/ipv4_checki.al in @INC (@INC
contains: /usr/local/l
ib /usr/local/lib/perl5/5.8.0/sun4-solaris /usr/local/lib/perl5/5.8.0
/usr/local/lib/perl5
/5.8.0/sun4-solaris/CORE /usr/local/lib/perl5/site_perl/5.8.0/MIME
/usr/local/lib/perl5/5.
8.0/CGI/ /usr/local/bin/perld/modules/Net-IPv4Addr-0.09/blib/script
/usr/local/lib/perl5/5
.8.0/sun4-solaris /usr/local/lib/perl5/5.8.0
/usr/local/lib/perl5/site_perl/5.8.0/sun4-sol
aris /usr/local/lib/perl5/site_perl/5.8.0 /usr/local/lib/perl5/site_perl
.) at number_test
.pl line 15
AutoLoader::AUTOLOAD(23.23.109.103) called at number_test.pl line
15
Derek B. Smith
OhioHealth IT
UNIX / TSM / EDM Teams