如何为ActivePerl安装XML :: LibXML?

时间:2009-09-07 22:18:21

标签: perl activeperl xml-libxml

我是Perl的新手,我正在使用ActivePerl。 我收到以下错误:

  

无法在@INC中找到XML / LibXML.pm ...

我已尝试过所有内容,但无法找到为XML :: LibXML安装“正确”模块的步骤。

这正是发生了什么。我正在从命令提示符运行脚本:

  

c:\ temp> perl myscript.pl

myscript.pl的前几行:

#!/usr/bin/perl

use Archive::Zip qw( :ERROR_CODES :CONSTANTS );
use HTTP::Date;
use XML::Parser;
use LWP::UserAgent;
use XML::LibXML;
use Archive::Extract;
use Encode;
use LWP::Simple;

require HTTP::Request;
...

然后我收到此错误:

  

c:\ temp> perl myscript.pl无法找到   @INC中的XML / LibXML.pm(@INC包含:   C:/ Perl / site / lib C:/ Perl / lib。)at   myscript.pl第7行。开始   失败 - 编译中止   myscript.pl第7行

5 个答案:

答案 0 :(得分:7)

您应该可以使用ActivePerl Perl Package Manager进行安装。安装ActivePerl时应该创建一个开始菜单快捷方式,启动the GUI并搜索xml-libxml和libxml-perl。

- 修改

Here's a post on adding an alternative repository to PPM and installing XML-LibXML

答案 1 :(得分:3)

看起来ActiveState不提供带有XML :: LibXML的PPM。我在README中查看了CPAN上的模块,显然可以使用prebuild ppm软件包here

答案 2 :(得分:2)

我最近经历了安装XML :: LibXML的痛苦。这是我发现的:

  1. 我们正在使用ActiveState ActivePerl 5.8.8
  2. 为了让ActivePerl的PPM通过我们的代理,必须创建一个值为“http://proxy.ext。[example] .com”的环境变量“http_proxy”,然后重新登录。
  3. 所需的软件包并非都位于ActiveState的存储库中。添加了温尼伯大学的Perl存储库http://theoryx5.uwinnipeg.ca/ppms/package.xml(请注意,使用的确切存储库取决于您的ActivePerl版本)
  4. 手动将以下DLL安装到C:\ perl \ bin \中(无论出于何种原因,我在构建这些DLL时遇到了一些问题,所以我最终只是从http://trouchelle.com/ppm/dll/处的存储库中抓取它们)
    • iconv.dll
    • libxml2.dll
    • zlib1.dll
  5. 至少对于我们使用的XML-LibXML版本,软件包安装程序无法正常使用必备XML-LibXML-Common。您 必须 自行安装XML-LibXML-Common软件包, BEFORE 安装XML-LibXML的其余部分。
  6. 虽然它们可能不是最新版本,但我目前使用的软件包版本(包括先决条件)是:

    • XML-LibXML-Common(版本0.13)
    • XML-LibXML(版本1.64)
    • XML-NamespaceSupport(ver 1.10)
    • XML-SAX(版本0.96)

答案 3 :(得分:1)

在5.16上,接受的答案对我不起作用。来自this question

  

XML :: LibXML还没有为Perl 5.16做好准备。安装 5.14

下载:

答案 4 :(得分:0)

最后,我找到了唯一的替代ActivePerl存储库,据我所知,它有一个XML :: LibXML 2.0121的包,它将安装在高达5.20.x的perl版本上。

您可以从此处获取包含5.20.2的ActivePerl版本:downloads.activestate.com/ActivePerl/releases /

替代存储库在bribes.org/perl /

中称为Bribes de Perl

在选项中输入的存储库的URL为http://bribes.org/perl/ppm/