2010-08-18 56 views
1

我想使用主目录特定的非根目录来从cpan安装的东西。我如何配置它?本地cpan构建

正常的CPAN配置会尝试将包安装到/usr中。添加'makepl_arg' => q[PREFIX=~/cpan_local]后,似乎构建了简单的包,但我无法构建一个包来引发依赖关系 - 没有找到依赖关系。

后,我把它改成'makepl_arg' => q[PREFIX=~/cpan_local LIB=~/cpan_local],我得到以下信息:Warning: Prerequisite 'ExtUtils::CBuilder => 0.27' for 'D/DA/DAGOLDEN/Module-Build-0.3607.tar.gz' already installed but installation looks suspicious. Skipping another installation attempt, to prevent looping endlessly.

我如何配置这个正常吗?我希望自动生成的所有内容都可以用于~/cpan_local。 (或者对于熟悉python的人来说,我希望它像virtual-env一样工作,并从中运行easy_install)。

+0

重复[如何将CPAN模块安装到本地目录?](http://stackoverflow.com/questions/540640/how-can-i-install-a-cpan-module-into-a-本地目录) - 诀窍是使用[local :: lib](http://search.cpan.org/perldoc?local::lib),这是非常有据可查的。 – Ether 2010-08-18 14:32:23

回答

5

更好的是,先安装App::cpanminus。然后用它作为普通用户来安装模块。如果这个用户不能写入/usr/local/lib/perl*目录,它将采取在其主目录中写入,或者将-l--local-lib选项传递给它,直接将它安装到你的主目录中,而不需要确定它是否可以在系统范围内安装它们。

最后,安装local::lib并使用您的.bashrc文件自动设置您的环境将允许您省略--local-lib选项并直接安装到您的主目录。