【问题标题】:Perlbrew fails to install new perl versionPerlbrew 无法安装新的 perl 版本
【发布时间】:2023-02-01 17:02:47
【问题描述】:

我正在尝试使用 perlbrew 安装新的 perl 版本:

perlbrew install perl-5.34.1

但这会产生错误:

Fetching perl 5.34.1 as /home/703404669/perl5/perlbrew/dists/perl-5.34.1.tar.gz
Download https://cpan.metacpan.org/authors/id/S/SH/SHAY/perl-5.34.1.tar.gz to /home/703404669/perl5/perlbrew/dists/perl-5.34.1.tar.gz
ERROR: Failed to download https://cpan.metacpan.org/authors/id/S/SH/SHAY/perl-5.34.1.tar.gz
ERROR: Failed to execute the command

    curl --silent --location --fail -o /home/703404669/perl5/perlbrew/dists/perl-5.34.1.tar.gz https://cpan.metacpan.org/authors/id/S/SH/SHAY/perl-5.34.1.tar.gz

Reason:

    5888

我在谷歌搜索中找不到。

我知道没有任何错别字,因为当我故意写错一些东西时,我会得到一个不同的错误。

我不知道为什么会这样,也不知道如何解决。

编辑:

命令

curl --location https://cpan.metacpan.org/authors/id/S/SH/SHAY/perl-5.34.1.tar.gz > /dev/null

产出

 % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 17.3M  100 17.3M    0     0  68.5M      0 --:--:-- --:--:-- --:--:-- 68.5M

如何使用 perlbrew 安装 perl 版本?

【问题讨论】:

  • 如果你尝试curl --location https://cpan.metacpan.org/authors/id/S/SH/SHAY/perl-5.34.1.tar.gz > /dev/null,你会得到什么?
  • @choroba 我已经编辑了问题以显示命令的输出
  • 根据this 帖子,退出代码 5888 似乎与退出代码 23 相同。退出代码 23 表示“写入错误。curl 无法将数据写入本地文件系统或类似文件。curl 从网络逐块接收数据并将其存储在(或将其写入标准输出),一次一个。如果该写入操作得到一个错误,这是退出状态。”,参考here
  • 我认为您需要先运行perlbrew init。否则目录将丢失

标签: perl perlbrew


【解决方案1】:

58880x1700。对于使用 exit(0x17) 的程序,这可能是 $?,也就是说 exit(23)curl 在以下情况下使用该退出代码

23 写入错误。 Curl 无法将数据写入本地文件系统或类似文件系统。

听起来它不能写信给/home/703404669/perl5/perlbrew/dists/perl-5.34.1.tar.gz


如果目录不存在,可能是你没有正确安装perlbrew

Ways to install perlbrew:

curl -L https://install.perlbrew.pl | bash
wget -O - https://install.perlbrew.pl | bash
etch -o- https://install.perlbrew.pl | sh
sudo cpan App::perlbrew
perlbrew init

您还需要按照说明在 shell 的交互式启动脚本中放置一个命令。


或者您可能没有足够的磁盘空间。你是不是想把perlbrew安装到/home/703404669/perl5/perlbrew以外的地方?

默认的perlbrew根目录是~/perl5/perlbrew,可以在安装和初始化之前通过设置PERLBREW_ROOT环境变量来改变。

【讨论】:

【解决方案2】:

在我的例子中,问题是它不会为该下载创建目标文件夹。所以为我修复的是:
mkdir $HOME/perl5/perlbrew/dists -p

在上面的例子中:
mkdir -p /home/703404669/perl5/perlbrew/dists

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-06-11
    • 1970-01-01
    • 2015-05-07
    • 1970-01-01
    • 2011-04-13
    • 1970-01-01
    • 1970-01-01
    • 2019-01-06
    相关资源
    最近更新 更多