Perl 在Ubuntu的Catalyst框架中获取编译错误

Perl 在Ubuntu的Catalyst框架中获取编译错误,perl,catalyst,Perl,Catalyst,我正在Catalyst框架上构建一个应用程序,在这方面我是一个完全的新手。昨天我安装了SQLite,从那以后我收到了如下错误消息: mohit@mohit-Studio-1555:~$ catalyst.pl Undefined subroutine &Catalyst::Exception::Base::with called at /usr/share/perl5/Catalyst/Exception.pm line 50. Compilation failed in require

我正在Catalyst框架上构建一个应用程序,在这方面我是一个完全的新手。昨天我安装了SQLite,从那以后我收到了如下错误消息:

mohit@mohit-Studio-1555:~$ catalyst.pl
Undefined subroutine &Catalyst::Exception::Base::with called at /usr/share/perl5/Catalyst/Exception.pm line 50.
Compilation failed in require at /usr/share/perl5/Catalyst/Utils.pm line 4.
BEGIN failed--compilation aborted at /usr/share/perl5/Catalyst/Utils.pm line 4.
Compilation failed in require at /usr/share/perl5/Catalyst/Helper.pm line 12.
BEGIN failed--compilation aborted at /usr/share/perl5/Catalyst/Helper.pm line 12.
Compilation failed in require at /usr/bin/catalyst.pl line 26.
BEGIN failed--compilation aborted at /usr/bin/catalyst.pl line 26.
我试着重新安装,清理,并试图谷歌它,但无法解决

请帮帮我。有什么问题吗


升级
namespace::clean
后,我收到以下错误:

The old Moose::Util::MetaRole API (before version 0.94) has been deprecated at /usr/share/perl5/Catalyst/Exception/Basic.pm line 3
Catalyst::Exception::Basic::BEGIN() called at /usr/lib/perl5/MooseX/Role/WithOverloading.pm line 3
eval {...} called at /usr/lib/perl5/MooseX/Role/WithOverloading.pm line 3
require Catalyst/Exception/Basic.pm called at /usr/local/lib/perl/5.10.1/Class/MOP.pm line 114
Class::MOP::__ANON__() called at /usr/local/share/perl/5.10.1/Try/Tiny.pm line 71
eval {...} called at /usr/local/share/perl/5.10.1/Try/Tiny.pm line 67
Try::Tiny::try('CODE(0x8f366b8)', 'Try::Tiny::Catch=REF(0x8e6b9c8)') called at /usr/local/lib/perl/5.10.1/Class/MOP.pm line 125
Class::MOP::load_first_existing_class('Catalyst::Exception::Basic') called at /usr/local/lib/perl/5.10.1/Class/MOP.pm line 137
Class::MOP::load_class('Catalyst::Exception::Basic', undef) called at /usr/local/lib/perl/5.10.1/Moose/Util.pm line 113
Moose::Util::_apply_all_roles('Moose::Meta::Class=HASH(0x8f36458)', undef, 'Catalyst::Exception::Basic') called at /usr/local/lib/perl/5.10.1/Moose/Util.pm line 91

您安装的版本似乎与已安装的版本不同,并且未捕获冲突警告。将namespace::clean升级到最新版本应该可以解决您的问题。

您安装的版本可能会破坏已安装的版本,并且未捕获冲突警告。将namespace::clean升级到最新版本可以解决您的问题。

谢谢您的回答,但升级后我遇到了一个新问题。这不是错误,而是警告,如果你有新问题,你应该问一个新问题——但是升级MooseX::Role::WithOverloading。谢谢你的回答,但升级后我遇到了一个新问题。这不是错误,而是警告,如果你有新问题,你应该问一个新问题——但是升级MooseX::Role::WithOverloading。