in reply to Re: Net:Addr
in thread Net:Addr

ok now I am getting: Use of inherited AUTOLOAD for non-method Net::IPv4Addr::ipv4_checkip() + is deprecated at line 15 (#1) (D deprecated) As an (ahem) accidental feature, AUTOLOAD subroutin +es 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 f +or methods' AUTOLOADs. However, there is a significant base of exist +ing code that may be using the old behavior. So, as an interim step, +Perl currently issues an optional warning when non-methods use inherite +d 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/ in @INC (@INC contains: /usr/local/lib /usr/local/lib/perl5/5.8.0/sun4-solaris /usr/lo +cal/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 /usr/loca l/lib/perl5/5.8.0/sun4-solaris /usr/local/lib/perl5/5.8.0 /usr/local/l +ib/perl5/site_perl/5 .8.0/sun4-solaris /usr/local/lib/perl5/site_perl/5.8.0 /usr/local/lib/ +perl5/site_perl .) a t 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 w +here 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/ in @INC (@INC co +ntains: /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 /us +r/local/lib/perl5/5. 8.0/CGI/ /usr/local/bin/perld/modules/Net-IPv4Addr-0.09/blib /usr/loca +l/lib/perl5/5.8.0/su n4-solaris /usr/local/lib/perl5/5.8.0 /usr/local/lib/perl5/site_perl/5 +.8.0/sun4-solaris /u sr/local/lib/perl5/site_perl/5.8.0 /usr/local/lib/perl5/site_perl .) a +t lin e 15 AutoLoader::AUTOLOAD( called at l +ine 15
My PERL5LIB path is
/usr/local/lib:/usr/local/lib/perl5/5.8.0:/usr/local/lib/perl5/5.8.0/s +un4-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

2004-12-04 Janitored by Arunbear - added code tags, as per Monastery guidelines