可能重复:
What's the easiest way to install a missing Perl module?
我正在尝试运行a Perl script将SCXML转换为Graphviz DOT。我将脚本的第一行修改为:
#!/usr/bin/env perl
和chmod +x
文件。当我通过./scmxl2dot.pl
运行它时,我看到以下错误输出:
无法在@INC中找到LWP / Simple.pm(@INC包含:/opt/local/lib/perl5/site_perl/5.12.3/darwin-multi-2level / opt / local / lib / perl5 / site_perl /5.12.3 /opt/local/lib/perl5/vendor_perl/5.12.3/darwin-multi-2level /opt/local/lib/perl5/vendor_perl/5.12.3/opt/local/lib/perl5/5.12.3 / darwin-multi-2level /opt/local/lib/perl5/5.12.3 / opt / local / lib / perl5 / site_perl / opt / local / lib / perl5 / vendor_perl。)at ./scmxml2dot.pl第14行。<登记/> BEGIN失败 - 编译在./scmxml2dot.pl第14行中止。
该文件的第14行是use LWP::Simple;
我如何:
这是在OS X 10.7.3和Perl 5.12.3下运行的(如错误中所示)。
答案 0 :(得分:32)
你已经确定你没有它(在某处可以找到它)。
perl -MCPAN -e'install "LWP::Simple"'
答案 1 :(得分:6)
从命令行执行以下操作:
perl -MLWP::Simple -e 1
如果您没有从上面的命令获得任何输出,则安装该模块;如果您收到错误,则表示未安装
安装使用
perl -MCPAN -e'install "LWP::Simple"'
当perl遇到使用My :: Module时,它会遍历包含目录名的内置@INC模块的元素。在每个目录中,它检查是否有一个名为“My”的子目录,如果在该子目录中有一个名为“Module.pm”的文件。
检查系统上安装了LWP :: Simple模块的位置,并在代码的使用LWP :: Simple语句上方的行下面输入。
use lib '/usr/local/module';
use LWP::Simple;
答案 2 :(得分:2)
查看Perldoc网页。这将告诉您哪些模块是标准的Perl模块,哪些模块不是。
您还可以使用perldoc命令查明是否已安装Perl模块,如果已安装,则说明其文档。
$ perldoc LWP::Simple
(如果Perldoc不作为命令执行ls -l /usr/bin/perl*
。在Mac上,某些Perl命令没有打开执行位。要打开它,请执行sudo chmod a+x /usr/bin/perl
)
恰好LWP::Simple
不是标准的Perl模块,如果你没有它,你将不得不安装它。大多数人已经告诉过你cpan
。不幸的是,默认情况下,Mac没有安装所需的命令行开发工具。 You'll have to install them
安装完成后,您可以使用cpan
命令安装LWP :: Simple:
$ sudo cpan #Run cpan and configure it. It takes about 3 minutes
cpan> install LWP::Simple
cpan> exit