I create a file under: /usr/lib/perl5/site_perl/5.8.4/Foo/Utils.pm
it contains this:
package Foo::Utils;
require Exporter;
@ISA = qw(Exporter);
@EXPORT_OK = ('waa');
sub waa{
print "waaaaa\n";
}
I check that it's okay like this:
chris@feodor:~$ perl -MFoo::Utils -e 1
chris@feodor:~$
So that looks okay. I then create a perl script like this:
#!/usr/bin/perl
use strict;
use Foo::Utils;
waa();
But it dies with:
Undefined subroutine &main::waa called at ./sendsms.pl line 7.
I can fix this by referencing the package directly like so: Foo::Utils::waa(); But isn't this what 'use Foo::Utils' is supposed to do for me??
What's my obvious mistake?