perl模块的有关问题
2018-07-25 本文已影响3人
灵动的小猪
- 查看perl模块的安装目录
perl -e '{print "$_\n" foreach @INC}'
- 查看已经安装的模块
instmodsh
- 查看perl模块的安装路径
比如查看Math::Random::MT::Auto的安装路径
perldoc -l Math::Random::MT::Auto
- perl安装模块
cpan Math::Random::MT::Auto
- 安装过程中可能遇到以下问题,
'YAML' not installed, will not store persistent state
解决方法是
perl -MCPAN -e 'install "YAML"'
然后再次安装
cpan Math::Random::MT::Auto
- 但是会遇到下面的问题,那么就先安装缺少的模块
image.png
sudo cpan Exception::Class
然后在次安装
sudo cpan Math::Random::MT::Auto
(因为我不知道如何在非root情况下安装,所以就只能先用管理员安装了) - 在使用perl时,有时安装过模块后,运行程序还是出错,这是可以对脚本进行修改,
#!/bin/perl
改为
#!/bin/env perl
这是因为可能你有两个perl,但是你安装模块时使用的perl和运行时调用的perl不是同一个导致的 - 模块的调用
在调用perl模块时,如果没有在环境变量中,就可以使用下面的语句在调用之前指定模块的位置
BEGIN {
unshift @INC,
qw(
/pub/anaconda3/lib/perl5/site_perl/5.22.0/x86_64-linux-thread-multi #模块的路径
/pub/anaconda3/lib/perl5/site_perl/5.22.0 #模块的路径
/pub/anaconda3/lib/perl5/site_perl #模块的路径
);
}