gpt4 book ai didi

perl - 在 CPAN 依赖项安装期间无法在 @INC 中定位,而不是以 root 身份执行

转载 作者:行者123 更新时间:2023-12-01 12:00:09 26 4
gpt4 key购买 nike

在尝试做的时候:

perl -I'/v1/data/site_perl' -MCPAN -e 'install Log::Dispatch';

我继续收到“无法在@INC 中找到 Params/Validate.pm”。查看输出时,/v1/data/site_perl 不在显示的 @INC 中,即使我使用了 -I。

我不是 root,所以我更改了我的 CPAN 配置,以便:

'makepl_arg' => q[LIB=/v1/data/site_perl INSTALLSITEMAN1DIR=/v1/data/site_perl/man/man1 INSTALLSITEMAN3DIR=/v1/data/site_perl/man/man3 INSTALLMAN1DIR=/v1/data/site_perl/man/man1 INSTALLMAN3DIR=/v1/data/site_perl/man/man3]

所以连 LIB 都设置好了。

在我的基本脚本中:

use lib '/v1/data/site_perl';
use Params::Validate;

没有问题。

如何在不强制安装的情况下让 Log::Dispatch 使用 lib/v1/data/site_perl?我错过了什么?

最佳答案

我相信 CPAN.pm 喜欢为各种任务调用很多子进程,这些最终会启动新的 perl,它不会继承你的 -I 旗帜。相反,请尝试设置 PERL5LIB 环境变量,例如

PERL5LIB='/v1/data/site_perl' perl -MCPAN -e 'install Log::Dispatch'

另一个要考虑的策略是在您的本地目录中简单地构建一个完整的 Perl 安装——然后使用那个 perl 的 CPAN 实用程序。他们已经内置了您自己的所有路径。这是我倾向于这样做的方式。

关于perl - 在 CPAN 依赖项安装期间无法在 @INC 中定位,而不是以 root 身份执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2625060/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com