Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/perl/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Perl 在Ubuntu上安装Catalyst和SQLite的最佳实践是什么?_Perl_Installation_Catalyst_Ubuntu 10.10 - Fatal编程技术网

Perl 在Ubuntu上安装Catalyst和SQLite的最佳实践是什么?

Perl 在Ubuntu上安装Catalyst和SQLite的最佳实践是什么?,perl,installation,catalyst,ubuntu-10.10,Perl,Installation,Catalyst,Ubuntu 10.10,我对Perl和Ubuntu没有经验 我在用Ubuntu 10.10。我通过sudo-apt-get-install-SQLite从和SQLite安装了最新的Catalyst版本。安装Catalyst后,我可以使用Catalyst脚本运行服务器,但在安装SQLite后,当我尝试运行服务器时,我在perl5/namespace/autoclean.pm中遇到编译错误,表示&名称空间未定义子例程。但我从没碰过里面的任何代码 我不想调试我的问题,因为我的Ubuntu昨晚已经崩溃了(我只需要知道安装这些软

我对Perl和Ubuntu没有经验

我在用Ubuntu 10.10。我通过
sudo-apt-get-install-SQLite
从和SQLite安装了最新的Catalyst版本。安装Catalyst后,我可以使用Catalyst脚本运行服务器,但在安装SQLite后,当我尝试运行服务器时,我在
perl5/namespace/autoclean.pm
中遇到编译错误,表示
&名称空间未定义子例程
。但我从没碰过里面的任何代码


我不想调试我的问题,因为我的Ubuntu昨晚已经崩溃了(我只需要知道安装这些软件包的最佳实践,如果有人能专门指导我如何安装这些软件包,我将不胜感激。

前几天我在工作中就是这么做的:

1.  Obtain perl, e.g. current stable (as of the 12th of Jan 2011):

 $ curl http://cpan.perl.org/src/5.0/perl-5.12.2.tar.gz -O
 $ gunzip -c perl-5.12.2.tar.gz | tar xvf -
 $ cd perl 5.12.2
 $ sh Configure -des -Dprefix=~/perl-5.12 # install into ~/perl-5.12
 $ make
 $ make test
 $ make install

2.  Configure PATH and cpan config, by putting the following in ~/.bashrc:

 export PERL_MM_USE_DEFAULT=1
 export PATH=~/perl-5.12/bin:$PATH
 export MANPATH=~/perl-5.12/man:$MANPATH # breaks stuff on solaris

Make CPAN slightly nicer to deal with.

 $ source ~/.bashrc
 $ cpan Bundle::CPAN
 $ cpan App::cpanminus

=head2 Deploying to a different machine using the same architecture

Just copy ~/perl-5.12 over to the new machine and put perl-5.12/bin in the $PATH.
然后安装催化剂:

$ cpanm Catalyst::Devel
$ cpanm Catalyst::Runtime
$ cpanm DBIx::Class # gives you sqlite along with it

Catalyst运行时。您可以使用与SQLite相同的方式安装它。包名为
libcatalyst perl

谢谢您的回答。我将在当天晚些时候开始修复操作系统时尝试。在运行cpanm Catalyst::Devel和runtime时,它会问一系列臭名昭著的问题,我不知道该回答什么。perlbrew lets您是否安装自定义本地Perl。这可以大大简化您的工作。如果与cpanm和locallib结合使用,功能非常强大。尽可能避免这种情况。坚持官方回购协议,让一切正常运行。如果出于某些原因需要从CPAN/source获得一些东西,您在试验可能的冲突方面会有更好的经验。我强烈反对欢迎wk。您将需要CPAN。如果有供应商perl更新,它可能会破坏您自己的开发环境,因此最好完全绕过供应商perl。在无法避免之前避免CPAN是愚蠢的,并且缺少perl的优点。我的问题是,即使以同样的方式安装,我也会出现编译错误在perl5中。我也使用libcatalyst perl安装。不走运:(你应该从
cat install
中清理已安装的文件,这样它们就不会再冲突。如果你需要详细信息,请问一个新问题。如何清理所有内容(听起来很无聊)