MP3 ::标签 - 无法正常工作

时间:2016-03-09 01:23:10

标签: perl cpan

我正在尝试在perl中编写一个使用MP3 :: Tag模块的小程序。 该程序没有执行并给我:

Can't locate MP3/Tag.pm in @INC (you may need to install the MP3::Tag module) (@INC contains: ... .) at mp3Editor.pl line 3.

第3行是:use MP3::Tag;

然后我尝试命令:cpan MP3::Tag

但我明白了:Warning: Cannot install MP3::Tag, don't know what it is.

我已经从CPAN的网站上下载了这个模块,但是我似乎无法让它运行起来。我该怎么做才能让 MP3 :: Tag 模块在我的系统上运行?任何帮助表示赞赏。谢谢。

编辑 env | grep -i perl会产生:

PERL_MB_OPT=--install_base "/home/bronson/perl5"
PERL_MM_OPT=INSTALL_BASE=/home/bronson/perl5

1 个答案:

答案 0 :(得分:1)

您的cpan客户端似乎配置错​​误,似乎没有适当的CPAN模块列表。 cpanm是一个比cpan更加用户友好的CPAN客户端,我推荐使用它。

如果新安装的cpanm安装了该模块但您仍然收到错误,并且which perl#!行中的Perl相同,那么模块可能安装在标准Perl库位置之外。有几种方法可以实现,第一种方法是检查影响安装的环境变量。 env | grep -i perl是一个好的开始。 PERL_MB_OPTPERL_MM_OPT之类的内容将改变cpancpanm调用Build.PL和Makefile.PL安装程序的方式。

如果设置了PERL_M*_OPT,则应该有相应的PERL5LIB告诉Perl查看这些模块的非标准位置。

通常这样做是为了允许非root用户将模块安装到其主目录中。

在您的情况下,您似乎设置了PERL_M*_OPT但没有设置PERL5LIB。您需要将PERL5LIB设置为安装模块的位置,可能是/home/bronson/perl5/lib/perl5/

这一切都有点毛茸茸。有两种工具可以使这更容易。

首先是Perlbrew。它在您的主目录中安装Perl并为您配置一切。它甚至可以支持多个版本。这是开发Perl的最简单和推荐的方法。它使您可以完全控制Perl安装,而不依赖于系统的安装。

另一种方法是使用local::lib来管理您的Perl环境。它将帮助您设置Perl环境变量,以将Perl模块安装到您的主目录并使用它们。你现在可能有一个错误的版本。