I´m writing my first programs in Perl, and wrote this:
use strict;
use warnings;
$animal = "camel";
print($animal);
When I run it, I get these messages from the Windows command-line:
Global symbol "animal" requires explicit package name at stringanimal.pl line 3
Global symbol "animal" requires explicit package name at stringanimal.pl line 4
Please, could anyone what these messages mean?
use strict;
forces you to declare your variables before using them. If you don't (as in your code sample), you'll get that error.
To declare your variable, change this line:
$animal = "camell";
To:
my $animal = "camell";
See "Declaring variables" for a more in-depth explanation, and also the Perldoc section for use strict
.
P.S. Camel is spelt "camel" :-)
Edit: What the error message actually means is that Perl can't find a variable named $animal
since it hasn't been declared, and assumes that it must be a variable defined in a package, but that you forgot to prefix it with the package name, e.g. $packageName::animal
. Obviously, this isn't the case here, you simply hadn't declared $animal
.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With