当前位置:  开发笔记 > 编程语言 > 正文

如何在没有安装权限的情况下使用新的Perl模块?

如何解决《如何在没有安装权限的情况下使用新的Perl模块?》经验,为你挑选了3个好方法。

这是我的情况:我对Perl几乎一无所知,但它是移植机器上唯一可用的语言.我只有权在我的本地工作区写入,而不是Perl安装位置.我需要使用CPAN 的Parallel :: ForkManager Perl模块

如何在不进行集中安装的情况下使用此Parallel :: ForkManager?是否有我可以设置的环境变量,因此它位于?

谢谢

JD



1> brian d foy..:

从perlfaq8:我如何保留自己的模块/库目录?:

构建模块时,请告诉Perl在哪里安装模块.

对于基于C的分发,在生成Makefile时使用INSTALL_BASE选项:

perl Makefile.PL INSTALL_BASE=/mydir/perl

您可以在CPAN.pm配置中进行设置,以便在使用CPAN.pm shell时模块自动安装在您的私有库目录中:

% cpan
cpan> o conf makepl_arg INSTALL_BASE=/mydir/perl
cpan> o conf commit

对于基于C的发行版,请使用--install_base选项:

perl Build.PL --install_base /mydir/perl

您可以配置CPAN.pm以自动使用此选项:

% cpan
cpan> o conf mbuild_arg --install_base /mydir/perl
cpan> o conf commit

INSTALL_BASE告诉这些工具将模块放入F.有关如何运行新安装的模块的详细信息,请参阅L.

但是,INSTALL_BASE有一个警告,因为它的行为与旧版ExtUtils :: MakeMaker所倡导的PREFIX和LIB设置不同.INSTALL_BASE不支持在同一目录下为多个Perl版本或不同体系结构安装模块.您应该考虑是否真的需要它,如果这样做,请使用较旧的PREFIX和LIB设置.有关更多详细信息,请参阅ExtUtils :: Makemaker文档.



2> mikegrb..:

查看Mark Dominus 发表的这篇文章

摘抄:

在构建Makefile时设置PREFIX = X.

在构建Makefile时设置INSTALLDIRS = vendor和VENDORPREFIX = X.

或者可能代替VENDORPREFIX,您需要设置INSTALLVENDORLIB或其他东西

或者也许不是在构建Makefile时设置它们,而是在运行make install目标时需要设置它们

在构建Makefile时设置LIB = X/lib

使用PAR

使用local :: lib

Mark还在他的博客中提供了另一个解决方案,它需要更多的空间来进行desribe,但归结为运行make和make test但不是make install然后使用blib /中的东西.



3> ChathuraG..:

将包形式CPAN下载到文件夹:

wget http://search.cpan.org/CPAN/authors/id/S/SZ/SZABGAB/Parallel-ForkManager-1.06.tar.gz
gunzip Parallel-ForkManager-1.06.tar.gz
tar -xvf Parallel-ForkManager-1.06.tar

在此之前在家中创建一个文件夹来存储本地模块,现在进入下载文件夹并运行以下cmmands:

perl Makefile.PL PREFIX=/home/username/myModules
make
make test
make install

从已安装的文件夹/ home/username/myModules获取ForkManager的路径,找到Parallel文件夹并获取完整路径.

现在在你的perl文件中将这些放在开头

use lib '/home/username/myModules/bin.../Parallel';
use parallel::ForkManager;

- 应该这样做.

推荐阅读
手机用户2402852387
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有