-1
我能在我的本地機器上運行下面的代碼,我有須藤的力量」錯誤本地
#!/usr/bin/env perl
package Cat
{
use Moose;
has 'name', is => 'ro', isa => 'Str';
}
my $test_obj = Cat->new(name => "kitty");
print $test_obj->name()."\n";
結果:
$perl Cat.pl
kitty
但是,當我跑的確切在其他機器上同樣的代碼,我沒有sudo的, 我得到以下錯誤:
syntax error at Cat.pl line 5, near "{
"
Execution of Cat.pl aborted due to compilation errors.
爲什麼母鹿這發生了嗎?
我在我的三臺機器上安裝了使用cpanm的Module,其中一臺使用sudo,另外兩臺使用sudo(我在本地安裝)。的perl的版本是:
machine 1(worked, has sudo) : (v5.14.2) built for cygwin-thread-multi-64int
machine 2(did not work, no sudo previlage) : perl, v5.10.1 (*) built for x86_64-linux-thread-multi
machine 3(did not work, no sudo previlage) : v5.10.0 built for x86_64-linux-thread-multi
所以看起來它與共享庫或有事做,但我無法弄清楚到底爲什麼它不兩臺機器上運行。這是一個已知的問題?
或'{package Cat; ...},因爲底部的代碼不應該是程序包的一部分。 – cjm