加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

perl-module – 使用cpanm安装Perl模块

发布时间:2020-12-16 06:28:11 所属栏目:大数据 来源:网络整理
导读:也许这是一个愚蠢的问题?如果我安装像File这样的模块 cpanm File 它会在File下安装所有内容,比如File:Listing等吗? 解决方法 这不是一个愚蠢的问题,我可以理解你为什么不想尝试它. 但你可以继续做下去 cpanm File 并且很少会发生,因为没有名为File的模块.
也许这是一个愚蠢的问题?如果我安装像File这样的模块

cpanm File

它会在File下安装所有内容,比如File:Listing等吗?

解决方法

这不是一个愚蠢的问题,我可以理解你为什么不想尝试它.

但你可以继续做下去

cpanm File

并且很少会发生,因为没有名为File的模块.

CPAN上的模块按分发组织.单个分发可以包含一个或多个相关模块,因此cpanm首先检查哪个分发包含您要求的模块并获取它.

检查该分布的依赖性,如果有任何已经过时或根本没有安装,那么它将依次获取并安装每个分发.最终要么解决所有依赖关系,要么会出现阻止cpanm继续进行的严重错误.

安装所有依赖项后,可以解压缩并安装包含模块的分发.

一切都很好,这是事情的结束,所以简而言之

cpanm File

什么都不安装,因为没有File模块.

cpanm File:Listing

将安装包含File :: Listing的发行版,在撰写本文时,它是GAAS / File-Listing-6.04.tar.gz

该分发也恰好包含这些模块

File::Listing::apache
File::Listing::dosftp
File::Listing::netware
File::Listing::unix
File::Listing::vms

所以cpanm将首先确保所有这些模块的依赖关系得到满足,并在相同的基础上递归递归.

请注意,尝试使用cpan命令可能很有用,该命令具有更全面的命令集.最重要的是,它将按名称或正则表达式列出模块,发行版,作者和包.

输入cpan并获取提示

cpan>

什么时候可以要求

cpan> help

它将列出可用命令的摘要.例如,我可以检查File :: Listing模块

cpan> m File::Listing

看这样的作者,发行版(“CPAN_FILE”),版本等

Module id = File::Listing
    CPAN_USERID  GAAS (Gisle Aas <gisle@ActiveState.com>)
    CPAN_VERSION 6.04
    CPAN_FILE    G/GA/GAAS/File-Listing-6.04.tar.gz
    UPLOAD_DATE  2012-02-15
    MANPAGE      File::Listing - parse directory listing
    INST_FILE    C:StrawberryperlvendorlibFileListing.pm
    INST_VERSION 6.04

我也可以使用正则表达式查找具有相似名称的发行版

cpan> d /File-Listing/

看到有两个匹配的发行版

Distribution    GAAS/File-Listing-6.04.tar.gz
Distribution    PLICEASE/File-Listing-Ftpcopy-0.05.tar.gz
2 items found

我可以看看Gisle Aas的文件列表分发

cpan> d GAAS/File-Listing-6.04.tar.gz

我被告知该发行版的成员模块(“CONTAINSMODS”)等等

Distribution id = G/GA/GAAS/File-Listing-6.04.tar.gz
    CPAN_USERID  GAAS (Gisle Aas <gisle@ActiveState.com>)
    CPAN_VERSION 6.04
    CONTAINSMODS File::Listing File::Listing::apache File::Listing::dosftp File::Listing::netware File::Listing::unix File::Listing::vms
    UPLOAD_DATE  2012-02-15

cpanm没有这样的浏览功能,所以我建议你尝试使用cpan本身并使用m和d命令一段时间,同时使用全名和正则表达式模式.

一旦了解了CPAN存储库的结构,您就会发现cpanm对于一般用途更快更精确.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读