在Windows上为Perl安装cURL模块

时间:2014-06-03 02:51:57

标签: perl curl installation libcurl perl-module

我的Windows机器上有ActivePerl 5.14.2。我一直在尝试安装LWP cURL模块。我已经在我的机器上安装了libcurl-dev库和GCC。

我也理解LWP cURL依赖于WWW-Curl-Easy模块。所以我也安装了它。我使用自述文件中给出的步骤通过命令行安装了所有这些。我运行了perl makefile.pl命令,然后是makemake install。安装过程中没有发出任何错误。

我正在尝试执行此示例代码来测试我的LWP cURL安装:

    use LWP::Curl;
    use strict;
    use warnings;

    my $lwpcurl = LWP::Curl->new();
    my $content = $lwpcurl->get('http://search.cpan.org','http://www.cpan.org'); 

我收到以下错误:

  

无法在@INC中找到模块WWW :: Curl的可加载对象(@INC   包含:C:/ Perl64 / site / lib C:/ Perl64 / lib。)at   C:/Perl64/site/lib/WWW/Curl.pm第11行。开始失败 - 编译   在C:/Perl64/site/lib/WWW/Curl.pm第11行中止。编译失败   in c at C:/Perl64/site/lib/WWW/Curl/Easy.pm第9行。编译   在C:/Perl64/site/lib/LWP/Curl.pm第5行的要求失败。开始   失败 - 编译在C:/Perl64/site/lib/LWP/Curl.pm第5行中止。   在D:\ Varsha \ Curl.pl第1行的require中编译失败。开始   失败 - 编译在D:\ Varsha \ Curl.pl第1行中止。

我哪里错了?

2 个答案:

答案 0 :(得分:0)

错误意味着WWW::Curl未安装或其路径无法搜索(它不在@INC中)。所以解决方案是

  1. 确保已安装该模块。
  2. 将安装模块的路径添加到@INC。由于您使用的是Windows,因此可以使用set PERL5LIB = c:\path\to\dir
  3. 如需永久性解决方案,请按照以下说明进行操作:

    右键点击我的电脑,然后点击属性

    系统属性窗口中,点击高级标签。

    在“高级”部分中,点击环境变量按钮。

    在“ Foo Bar的用户变量”部分的“环境变量”窗口中,单击“新建”并输入以下内容:

    变量名称: PERL5LIB

    变量值: c:\ path \ to \ dir

    然后单击“确定”3次。在此之后打开的Windows将已经知道新变量。在命令窗口中键入以查看新设置的值:

    echo %PERL5LIB%
    

    对于在同一环境中执行的每个脚本,这会将private / home / foobar / code目录(或c:\ path \ to \ dir目录)添加到@INC的开头。

    另见:Installing perl dependency automatically in perl

答案 1 :(得分:0)

这可能不是您想要的方向,但我建议您考虑升级您的perl并更改发行版:

  • 安装Strawberry Perl - 5.18.2.2是当前推荐的版本。
  • 安装cpanmperl -MCPAN -e "install App::cpanminus"
  • 安装LWP::Curlcpanm LWP::Curl

我很难打扰让您相信这一变化,但Strawberry Perlcpanm组合使安装模块比处理专有的ppm更容易我认为ActivePerl

如果你厌倦了偶尔的头痛,可以考虑一下。