【问题标题】:Installing XML::DOM module fails安装 XML::DOM 模块失败
【发布时间】:2013-11-05 18:08:03
【问题描述】:

我两周都找不到任何解决方案。!!!!!! 我尝试使用 cpan.exe 安装 CPAN 模块。

当我尝试使用“安装 XML::DOM”安装模块时失败,说明 dmake.exe 不正常,

这是我的错误:

Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation.  All rights reserved.

C:\Users\ehsan\Documents>cpan
Set up gcc environment - gcc.exe (release with patches / build 20130526 by st
berryperl.com) 4.7.3

There seems to be running another CPAN process (pid 5932).  Contacting...
Other job not responding. Shall I overwrite the lockfile 'C:\Perl\cpan\.lock'
Y/n) [y] y

cpan shell -- CPAN exploration and modules installation (v1.9800)
Enter 'h' for help.


cpan> install XML::DOM
Reading 'C:\Perl\cpan\Metadata'
  Database was generated on Thu, 24 Oct 2013 11:09:28 GMT
Running install for module 'XML::DOM'
Running make for T/TJ/TJMATHER/XML-DOM-1.44.tar.gz
Checksum for C:\Perl\cpan\sources\authors\id\T\TJ\TJMATHER\XML-DOM-1.44.tar.g
k
Scanning cache C:\Perl/cpan/build for sizes
............................................................................D

XML-DOM-1.44/
XML-DOM-1.44/lib/
XML-DOM-1.44/lib/XML/
XML-DOM-1.44/lib/XML/DOM/
XML-DOM-1.44/lib/XML/DOM/DocumentType.pod
XML-DOM-1.44/lib/XML/DOM/DocumentFragment.pod
XML-DOM-1.44/lib/XML/DOM/AttlistDecl.pod
XML-DOM-1.44/lib/XML/DOM/Notation.pod
XML-DOM-1.44/lib/XML/DOM/Attr.pod
XML-DOM-1.44/lib/XML/DOM/ProcessingInstruction.pod
XML-DOM-1.44/lib/XML/DOM/Entity.pod
XML-DOM-1.44/lib/XML/DOM/Document.pod
XML-DOM-1.44/lib/XML/DOM/Parser.pod
XML-DOM-1.44/lib/XML/DOM/NodeList.pm
XML-DOM-1.44/lib/XML/DOM/Node.pod
XML-DOM-1.44/lib/XML/DOM/ElementDecl.pod
XML-DOM-1.44/lib/XML/DOM/EntityReference.pod
XML-DOM-1.44/lib/XML/DOM/NodeList.pod
XML-DOM-1.44/lib/XML/DOM/CharacterData.pod
XML-DOM-1.44/lib/XML/DOM/DOMException.pm
XML-DOM-1.44/lib/XML/DOM/PerlSAX.pm
XML-DOM-1.44/lib/XML/DOM/NamedNodeMap.pm
XML-DOM-1.44/lib/XML/DOM/NamedNodeMap.pod
XML-DOM-1.44/lib/XML/DOM/Comment.pod
XML-DOM-1.44/lib/XML/DOM/Element.pod
XML-DOM-1.44/lib/XML/DOM/XMLDecl.pod
XML-DOM-1.44/lib/XML/DOM/CDATASection.pod
XML-DOM-1.44/lib/XML/DOM/DOMImplementation.pod
XML-DOM-1.44/lib/XML/DOM/Text.pod
XML-DOM-1.44/lib/XML/DOM/AttDef.pod
XML-DOM-1.44/lib/XML/DOM.pm
XML-DOM-1.44/lib/XML/Handler/
XML-DOM-1.44/lib/XML/Handler/BuildDOM.pm
XML-DOM-1.44/t/
XML-DOM-1.44/t/dom_jp_minus.t
XML-DOM-1.44/t/dom_noexpand.t
XML-DOM-1.44/t/dom_template.t
XML-DOM-1.44/t/dom_jp_cdata.t
XML-DOM-1.44/t/dom_jp_modify.t
XML-DOM-1.44/t/dom_text.t
XML-DOM-1.44/t/dom_cdata.t
XML-DOM-1.44/t/dom_jp_attr.t
XML-DOM-1.44/t/dom_extent.t
XML-DOM-1.44/t/dom_minus.t
XML-DOM-1.44/t/dom_attr.t
XML-DOM-1.44/t/dom_encode.t
XML-DOM-1.44/t/dom_jp_example.t
XML-DOM-1.44/t/dom_extent.ent
XML-DOM-1.44/t/dom_jp_print.t
XML-DOM-1.44/t/dom_documenttype.t
XML-DOM-1.44/t/dom_extent.dtd
XML-DOM-1.44/t/dom_jp_astress.t
XML-DOM-1.44/t/build_dom.t
XML-DOM-1.44/t/dom_print.t
XML-DOM-1.44/t/dom_astress.t
XML-DOM-1.44/t/dom_modify.t
XML-DOM-1.44/t/dom_example.t
XML-DOM-1.44/FAQ.xml
XML-DOM-1.44/Changes
XML-DOM-1.44/MANIFEST
XML-DOM-1.44/META.yml
XML-DOM-1.44/CmpDOM.pm
XML-DOM-1.44/samples/
XML-DOM-1.44/samples/minutes.xml
XML-DOM-1.44/samples/REC-xml-19980210.xml
XML-DOM-1.44/BUGS
XML-DOM-1.44/CheckAncestors.pm
XML-DOM-1.44/XML-Parser-2.31.patch
XML-DOM-1.44/Makefile.PL
XML-DOM-1.44/README

  CPAN.pm: Building T/TJ/TJMATHER/XML-DOM-1.44.tar.gz

Set up gcc environment - gcc.exe (release with patches / build 20130526 by st
berryperl.com) 4.7.3
Checking if your kit is complete...
Looks good
Warning: prerequisite XML::Parser::PerlSAX 0.07 not found.
Warning: prerequisite XML::RegExp 0 not found.
Writing Makefile for XML-DOM
Writing MYMETA.yml and MYMETA.json
---- Unsatisfied dependencies detected during ----
----       TJMATHER/XML-DOM-1.44.tar.gz       ----
    XML::Parser::PerlSAX [requires]
    XML::RegExp [requires]
Running make test
  Delayed until after prerequisites
Running make install
  Delayed until after prerequisites
Running install for module 'XML::Parser::PerlSAX'
Running make for K/KM/KMACLEOD/libxml-perl-0.08.tar.gz
Checksum for C:\Perl\cpan\sources\authors\id\K\KM\KMACLEOD\libxml-perl-0.08.t
gz ok
libxml-perl-0.08/
libxml-perl-0.08/lib/
libxml-perl-0.08/lib/XML/
libxml-perl-0.08/lib/XML/Handler/
libxml-perl-0.08/lib/XML/Handler/Subs.pm
libxml-perl-0.08/lib/XML/Handler/CanonXMLWriter.pm
libxml-perl-0.08/lib/XML/Handler/Sample.pm
libxml-perl-0.08/lib/XML/Handler/XMLWriter.pm
libxml-perl-0.08/lib/XML/PatAct/
libxml-perl-0.08/lib/XML/PatAct/ActionTempl.pm
libxml-perl-0.08/lib/XML/PatAct/PatternTempl.pm
libxml-perl-0.08/lib/XML/PatAct/Amsterdam.pm
libxml-perl-0.08/lib/XML/PatAct/MatchName.pm
libxml-perl-0.08/lib/XML/PatAct/ToObjects.pm
libxml-perl-0.08/lib/XML/SAX2Perl.pm
libxml-perl-0.08/lib/XML/Perl2SAX.pm
libxml-perl-0.08/lib/XML/ESISParser.pm
libxml-perl-0.08/lib/XML/Parser/
libxml-perl-0.08/lib/XML/Parser/PerlSAX.pm
libxml-perl-0.08/lib/Data/
libxml-perl-0.08/lib/Data/Grove/
libxml-perl-0.08/lib/Data/Grove/Parent.pm
libxml-perl-0.08/lib/Data/Grove/Visitor.pm
libxml-perl-0.08/lib/Data/Grove.pm
libxml-perl-0.08/doc/
libxml-perl-0.08/doc/CreatingPatActModules.pod
libxml-perl-0.08/doc/interface-style.pod
libxml-perl-0.08/doc/modules.xml
libxml-perl-0.08/doc/sax-2.0-adv.html
libxml-perl-0.08/doc/UsingPatActModules.pod
libxml-perl-0.08/doc/PerlSAX.pod
libxml-perl-0.08/doc/mirror.sh
libxml-perl-0.08/doc/sax-2.0.html
libxml-perl-0.08/doc/UsingPerlSAX.pod
libxml-perl-0.08/doc/index.html
libxml-perl-0.08/Changes
libxml-perl-0.08/MANIFEST
libxml-perl-0.08/examples/
libxml-perl-0.08/examples/schema.xml
libxml-perl-0.08/examples/MyHandler.pm
libxml-perl-0.08/examples/myhandler.xml
libxml-perl-0.08/examples/myhandler.pl
libxml-perl-0.08/examples/schema.pl
libxml-perl-0.08/examples/perlsax-test.pl
libxml-perl-0.08/examples/esis-test.pl
libxml-perl-0.08/t/
libxml-perl-0.08/t/schema.t
libxml-perl-0.08/t/stream.t
libxml-perl-0.08/t/xp_sax.t
libxml-perl-0.08/t/subs.t
libxml-perl-0.08/t/canon_xml_writer.t
libxml-perl-0.08/t/amsterdam.t
libxml-perl-0.08/ChangeLog
libxml-perl-0.08/libxml-perl.spec
libxml-perl-0.08/libxml-perl-0.08.spec
libxml-perl-0.08/Makefile.PL
libxml-perl-0.08/README

  CPAN.pm: Building K/KM/KMACLEOD/libxml-perl-0.08.tar.gz

Set up gcc environment - gcc.exe (release with patches / build 20130526 by st
berryperl.com) 4.7.3
Checking if your kit is complete...
Looks good
Writing Makefile for libxml-perl
Writing MYMETA.yml and MYMETA.json
CreateProcess failed (2).
dmake.exe:  Error executing 'C:\PROGRA~1\RATIONAL\RATION~1\NUTCROOT\mksnt\sh.
 -c C:\Perl\bin\perl.exe -MExtUtils::Command -e mkpath -- blib\lib': No such
e or directory
dmake.exe:  Error code -1, while making 'blib\lib\.exists'
  KMACLEOD/libxml-perl-0.08.tar.gz
  C:\STRAWB~1\c\bin\dmake.exe -- NOT OK
Running make test
  Can't test without successful make
Running make install
  Make had returned bad status, install seems impossible
Running install for module 'XML::RegExp'
Running make for T/TJ/TJMATHER/XML-RegExp-0.04.tar.gz
Checksum for C:\Perl\cpan\sources\authors\id\T\TJ\TJMATHER\XML-RegExp-0.04.ta
z ok
XML-RegExp-0.04/
XML-RegExp-0.04/META.yml
XML-RegExp-0.04/test.pl
XML-RegExp-0.04/README
XML-RegExp-0.04/Changes
XML-RegExp-0.04/MANIFEST
XML-RegExp-0.04/lib/
XML-RegExp-0.04/lib/XML/
XML-RegExp-0.04/lib/XML/RegExp.pm
XML-RegExp-0.04/Makefile.PL

  CPAN.pm: Building T/TJ/TJMATHER/XML-RegExp-0.04.tar.gz

Set up gcc environment - gcc.exe (release with patches / build 20130526 by st
berryperl.com) 4.7.3
Checking if your kit is complete...
Looks good
Writing Makefile for XML::RegExp
Writing MYMETA.yml and MYMETA.json
CreateProcess failed (2).
dmake.exe:  Error executing 'C:\PROGRA~1\RATIONAL\RATION~1\NUTCROOT\mksnt\sh.
 -c C:\Perl\bin\perl.exe -MExtUtils::Command -e mkpath -- blib\lib\XML': No s
 file or directory
dmake.exe:  Error code -1, while making 'blib\lib\XML\.exists'
  TJMATHER/XML-RegExp-0.04.tar.gz
  C:\STRAWB~1\c\bin\dmake.exe -- NOT OK
Running make test
  Can't test without successful make
Running make install
  Make had returned bad status, install seems impossible
Running make for T/TJ/TJMATHER/XML-DOM-1.44.tar.gz
  Has already been unwrapped into directory C:\Perl\cpan\build\XML-DOM-1.44-P
El

  CPAN.pm: Building T/TJ/TJMATHER/XML-DOM-1.44.tar.gz

Warning: Prerequisite 'XML::Parser::PerlSAX => 0.07' for 'TJMATHER/XML-DOM-1.
tar.gz' failed when processing 'KMACLEOD/libxml-perl-0.08.tar.gz' with 'make
NO'. Continuing, but chances to succeed are limited.
Warning: Prerequisite 'XML::RegExp => 0' for 'TJMATHER/XML-DOM-1.44.tar.gz' f
ed when processing 'TJMATHER/XML-RegExp-0.04.tar.gz' with 'make => NO'. Conti
ng, but chances to succeed are limited.
CreateProcess failed (2).
dmake.exe:  Error executing 'C:\PROGRA~1\RATIONAL\RATION~1\NUTCROOT\mksnt\sh.
 -c C:\Perl\bin\perl.exe -MExtUtils::Command -e mkpath -- blib\lib': No such
e or directory
dmake.exe:  Error code -1, while making 'blib\lib\.exists'
  TJMATHER/XML-DOM-1.44.tar.gz
  C:\STRAWB~1\c\bin\dmake.exe -- NOT OK
Running make test
  Can't test without successful make
Running make install
  Make had returned bad status, install seems impossible
Failed during this command:
 KMACLEOD/libxml-perl-0.08.tar.gz             : make NO
 TJMATHER/XML-DOM-1.44.tar.gz                 : make NO
 TJMATHER/XML-RegExp-0.04.tar.gz              : make NO

我在 Perlmonks 中问了这个问题,我得到了这个答案: “看起来您正在(或曾经)使用 MKS,这可能会混淆诸如 dmake 调用哪个 shell 等内容。我建议您从系统 PATH 变量(示例)中删除它(MKS 的路径)。一旦你已完成此操作,启动一个新的命令提示符并重试安装”

我该怎么办?

【问题讨论】:

  • perlmonks 的建议听起来很合理。你试过了吗?
  • 我想试试,但我不知道该怎么做?我是 Perl 的初学者。
  • 从 PATH 环境变量中删除某些内容不是 Perl 问题,而是 Windows 问题。有一个对话框可以在其中调整环境变量。或者,您可以在命令提示符中设置 PATH。但不要问详细,我不是 Windows 专家。
  • 我的问题是我应该设置哪个值!!!
  • 您熟悉Windows中的环境变量吗?

标签: perl cpan activeperl


【解决方案1】:

我在这里看到一个问题:

dmake.exe:执行 'C:\PROGRA~1\RATIONAL\RATION~1\NUTCROOT\mksnt\sh 时出错。 -c C:\Perl\bin\perl.exe -MExtUtils::Command -e mkpath -- blib\lib': 没有 e 或目录 dmake.exe:错误代码 -1,同时制作 'blib\lib\.exists' TJMATHER/XML-DOM-1.44.tar.gz C:\STRAWB~1\c\bin\dmake.exe -- 不行

您的dmake 调用来自Strawberry Perl 安装,它调用看起来像ActivePerl 的东西。 PATH 的谎言是疯狂。如果您想将 CPAN 与 Strawberry Perl 一起使用,请从您的 PATH 中删除 ActivePerl 目录。


具体来说,试试这个:

set PATH C:\STRAWB~1\perl\bin;C:\STRAWB~1\c\bin
cpan XML::DOM

【讨论】:

  • 我发现混合ActivePerl和StrawberryPerl是没有问题的。恰恰相反,ActivePerl 系统可能会检测到 StrawberryPerl 提供的 gcc 和 dmake,从而使 XS 模块的编译成为可能。可能是 MKS(不管是什么)导致了问题。
  • @mob:我改变了,现在我得到了这个错误:stackoverflow.com/questions/19617905/…
  • @Slaven Rezic:那我该怎么办?
  • @SlavenRezic 好吧,这取决于目标是什么。如果您想安装一个模块以与 Strawberry Perl 一起使用,那么您不希望 ActivePerl 程序首先出现在路径中。
  • OP 用“activeperl”标记了这个问题,所以这可能是他的目标。
【解决方案2】:

你的钥匙可能在这里:

Warning: Prerequisite 'XML::Parser::PerlSAX => 0.07' for 'TJMATHER/XML-DOM-1.
tar.gz' failed when processing 'KMACLEOD/libxml-perl-0.08.tar.gz' with 'make
NO'. Continuing, but chances to succeed are limited.
Warning: Prerequisite 'XML::RegExp => 0' for 'TJMATHER/XML-DOM-1.44.tar.gz' f
ed when processing 'TJMATHER/XML-RegExp-0.04.tar.gz' with 'make => NO'. Conti
ng, but chances to succeed are limited.

您需要先安装 XML::Parser::PerlSAX 和 XML::RegExp。

【讨论】:

  • 检查整个日志。 CPAN.pm 尝试安装这些模块,但失败了。
猜你喜欢
  • 2018-06-19
  • 2013-11-04
  • 2020-06-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-12-03
  • 1970-01-01
  • 2020-05-18
相关资源
最近更新 更多