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

标签 perl permissions installation module cpan

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

如何在不进行中央安装的情况下使用此 Parallel::ForkManager?是否有我可以设置的环境变量以便将其定位?

谢谢

京东

最佳答案

来自 perlfaq8: How do I keep my own module/library directory? :

当你构建模块时,告诉 Perl 在哪里安装模块。

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

perl Makefile.PL INSTALL_BASE=/mydir/perl

您可以在 CPAN.pm 配置中进行设置,以便自动安装模块
当您使用 CPAN.pm shell 时,在您的私有(private)库目录中:
% 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 有一个警告,因为它起作用
不同于旧版本的 PREFIX 和 LIB 设置
ExtUtils::MakeMaker 提倡。 INSTALL_BASE 不支持
为多个版本的 Perl 或不同版本安装模块
同一目录下的架构。你应该考虑如果你
真的想要那个,如果你这样做,请使用旧的 PREFIX 和 LIB
设置。有关详细信息,请参阅 ExtUtils::Makemaker 文档。

关于perl - 如何在没有安装权限的情况下使用新的 Perl 模块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/251705/

相关文章:

iphone - 将低于最新版本的 IOS 版本安装到设备

perl - 如何从模块创建 RPM 并递归地为依赖项创建单独的独立 RPM?

multithreading - Perl 线程中的垃圾收集

hadoop 权限问题 (hdfs-site.xml dfs.permissions.enabled)

javascript - 使用 Javascript 中的 Google Drive API 批量插入权限 API

linux - RHEL4/Mono x86_64 上的 System.UnauthorizedAccessException

arrays - Perl selectall_array - 从数组 ref 的数组中检索所有数据

mysql 查询的 perl json 输出

ruby - 如何在没有 root 访问权限的情况下安装 rvm?

python - 为什么在 Windows Vista 64 中使用 easy_install 和 Python 2.7 安装 Pylons 1.0 的最后一行会出现错误?