perl模块的安装
什么情况下你需要自己安装perl模块呢,就是在你执行perl脚本时出现Can’t locate Bio/SeqIO.pm in @INC(XXXX),后面的XXXX是你执行perl -V中@INC的内容。
这时为了保证perl脚本运行成功,你就必须自行安装Bio/SeqIO.pm
这时,你会在网上看到各种安装教程,CPAN安装、手动安装等。但是,CPAN安装可能需要root权限(有对/usr/bin等目录操作,这些需要权限),所以会报错,这里我就不用了,直接手动安装。
手动安装共有perl模块
假设我安装的就是 Bio/SeqIO.pm
-
CPAN官网https://metacpan.org/,搜索 Bio::SeqIO下载安装包BioPerl-1.7.8.tar.gz
-
上传并安装
tar -zxvf ./BioPerl-1.7.8.tar.gz cd ./BioPerl-1.7.8 perl Makefile.PL INSTALL_BASE=/home/zhaohuiyao/perl5 #指定安装目录 make make install #安装结束,你可以进入/home/zhaohuiyao/perl5下查看安装结果,我发现我的SeqIO.pm安装到:/home/zhaohuiyao/perl5/lib/perl5/Bio/下 #这是你需要将这个/home/zhaohuiyao/perl5/lib/perl5/添加到@INC变量中 #如果你的.bashrc文件中已经有PERL5LIB这个变量了,你需要执行 echo "export PERL5LIB=$PERL5LIB:/home/zhaohuiyao/perl5/lib/perl5" >> /home/zhaohuiyao/.bashrc source /home/zhaohuiyao/.bashrc #或者,直接vim /home/zhaohuiyao/.bashrc文件,在变量PERL5LIB后面直接添加:/home/zhaohuiyao/perl5/lib/perl5,然后source #如果没有该变量,你则需要执行 echo "export PERL5LIB="/home/zhaohuiyao/perl5/lib/perl5"" >> /home/zhaohuiyao/.bashrc source /home/zhaohuiyao/.bashrc #再次执行perl -V,查看@INC的内容是否发生改变,若是没有,可以选择重新配置环境变量。这是环境变量配置错误,不是pm没有安装 #再次执行perl脚本,则不会报错
手动安装软件自身的perl模块
就是配置环境变量,将软件自带的perl模块目录,添加到@INC中
- 首先,你要拿到这个perl模块的位置(.pm文件),通常在软件目录下的/lib下
- 然后,根据上面配置.bashrc文件即可,直到perl -V的结果中@INC添加了该perl模块的位置