0

请参阅第 2 部分,其中列出了安装模块时的最新错误继续发布

通常,当我尝试使用标准 cpan> install XML::Xercers 安装 XML::Xerces CPAN 模块时,我会在一些处理后收到以下错误消息:

XML-Xerces-2.7.0-0/samples/SEnumVal.pl
...
XML-Xerces-2.7.0-0/postSource.pl
XML-Xerces-2.7.0-0/xerces-headers.txt
Removing previously used /home/adoshi/.cpan/build/XML-Xerces-2.7.0-0

  CPAN.pm: Going to build J/JA/JASONS/XML-Xerces-2.7.0-0.tar.gz


   WARNING

You have not defined any of the following environment variables:
   XERCESCROOT
   XERCES_LIB
   XERCES_INCLUDE

These instruct me how to locate the Xerces header files, and the
Xerces dynamic library. If they are installed in a standard system
directory, I will located them without those variables.

However, if they have been installed in a non-standard location
(e.g. '/usr/include/xerces'), then I will need help. See the README
for more info.

Proceeding ...

   WARNING

You have not defined any of the following environment variables:
   XERCESCROOT
   XERCES_CONFIG

Without these I cannot find the config.status file that was used to
build your Xerces-C library. Without that file, I may not be able to properly
build the C++ glue files that come with Xerces.pm.

Proceeding anyway ...
Couldn't find XercesVersion.hpp in your include directory  at Makefile.PL line 1                                                                             88.
Running make test
  Make had some problems, maybe interrupted? Won't test
Running make install
  Make had some problems, maybe interrupted? Won't install

在将环境变量设置为 之后/home/username/XML-Xerces-2.7.0-0/XML-Xerces-2.7.0-0/Xerces.pm,请注意这里不确定我是否应该将环境变量指向Xerces.pmorXerces.cppXerces-extra.pmor Xerces.i,但现在我将环境变量指向/home/username/XML-Xerces-2.7.0-0/XML-Xerces-2.7.0-0/Xerces.pm

如上所述设置环境变量并输入后,cpan>install XML::Xerces我收到以下消息:

CPAN: Storable loaded ok
Going to read /home/username/.cpan/Metadata
  Database was generated on Fri, 16 Oct 2009 18:27:06 GMT
Running install for module XML::Xerces
Running make for J/JA/JASONS/XML-Xerces-2.7.0-0.tar.gz
CPAN: Digest::MD5 loaded ok
CPAN: Compress::Zlib loaded ok
Checksum for /home/adoshi/.cpan/sources/authors/id/J/JA/JASONS/XML-Xerces-2.7.0-0.tar.gz ok
Scanning cache /home/adoshi/.cpan/build for sizes
XML-Xerces-2.7.0-0/
...
XML-Xerces-2.7.0-0/postSource.pl
XML-Xerces-2.7.0-0/xerces-headers.txt
Removing previously used /home/adoshi/.cpan/build/XML-Xerces-2.7.0-0

  CPAN.pm: Going to build J/JA/JASONS/XML-Xerces-2.7.0-0.tar.gz

Using XERCES_LIB = /home/adoshi/XML-Xerces-2.7.0-0/XML-Xerces-2.7.0-0/Xerces.pm
using XERCES_CONFIG: /home/adoshi/XML-Xerces-2.7.0-0/XML-Xerces-2.7.0-0/Xerces.pm

 - Found CXX      =
 - Found CXXFLAGS =
 - Found LDFLAGS  =

Couldn't find XercesVersion.hpp in your include directory  at Makefile.PL line 188, <CONF> line 6823.
Running make test
  Make had some problems, maybe interrupted? Won't test
Running make install
  Make had some problems, maybe interrupted? Won't install

注意:我已经尝试下载XML::Xerces并尝试再次安装它,无论是手动还是使用 CPAN,但都收到了上述错误消息。

可能的原因是什么,可以建议什么来解决这个问题?

更新:即使在构建 Xerces-C 之后,XML::Xerces 模块也没有构建,并且收到以下错误消息。

[adoshi@upc01.dev XML-Xerces-2.7.0-0]$ perl Makefile.PL
Using XERCES_LIB = /adoshi/lib
Using XERCES_INCLUDE = /adoshi/include/xerces

   WARNING

You have defined the XERCESCROOT variable, but the file:

  XERCESCROOT/src/xercesc/config.status

 does not seem to point to the config.status file that was used to
 build your Xerces-C library. Without that file, I may not be able to
 properly build the C++ glue files that come with Xerces.pm.

Proceeding anyway ...
Couldn't find XercesVersion.hpp in your include directory /adoshi/include/xerces at Makefile.PL line 188.

Update2这是得到的错误,它说存在某种版本不匹配。

    Using XERCES_LIB = /home/adoshi/XML-Parser/Parser2/xerces-c_2_8_0-hppa-hpux-acc_3(1)/xerces-c_2_8_0-hppa-hpux-acc_3/lib
Using XERCES_INCLUDE = /home/adoshi/XML-Parser/Parser2/xerces-c_2_8_0-hppa-hpux-acc_3(1)/xerces-c_2_8_0-hppa-hpux-acc_3/include

   WARNING

You have defined the XERCESCROOT variable, but the file:

  XERCESCROOT/src/xercesc/config.status

 does not seem to point to the config.status file that was used to
 build your Xerces-C library. Without that file, I may not be able to
 properly build the C++ glue files that come with Xerces.pm.

Proceeding anyway ...
Using Xerces-C version info from /home/adoshi/XML-Parser/Parser2/xerces-c_2_8_0-hppa-hpux-acc_3(1)/xerces-c_2_8_0-hppa-hpux-acc_3/include/xercesc/util/XercesVersion.hpp
      *** Version Mismatch ***

You are attempt to build XML::Xerces-2.7.0-0 using Xerces-C-2.8.0,
this will most likely fail, so I am aborting.

You must use Xerces-C-2.7.0
4

2 回答 2

3

这是一个通用规则:任何名为“ROOT”的环境变量都在请求目录,而不是文件。

但是,您似乎没有安装 Xerces 库,这是安装 perl 模块之前所必需的。我将引用您提供的输出的某些部分,作为您错过下一步做什么的提示:


“......这些指导我如何定位 Xerces 头文件和 Xerces 动态库......”

“没有这些,我找不到用于构建 Xerces-C 库的 config.status 文件”


那么,您安装了Xerces-C吗?之后安装 Perl 模块会得到更好的结果。

于 2009-10-17T02:47:13.083 回答
-2

您是否尝试使用 PPM 安装 XML::Xerces?

于 2009-10-20T05:53:09.933 回答