How do I install XML::Xerces?

旧街凉风 提交于 2019-12-11 16:58:34

问题


Please see Part 2 which list latest errors while installing module continued post.

Normally when I try to install XML::Xerces CPAN module using standard cpan> install XML::Xercers than I get following error message after some processing:

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

After Setting Enviornment Variables to /home/username/XML-Xerces-2.7.0-0/XML-Xerces-2.7.0-0/Xerces.pm, note here am not sure whether I should point my environment variable to Xerces.pm or Xerces.cpp or Xerces-extra.pm or Xerces.i, but for now am pointing environment variables to /home/username/XML-Xerces-2.7.0-0/XML-Xerces-2.7.0-0/Xerces.pm

After setting environment variables as mentioned and entering cpan>install XML::Xerces I get following message:

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

Note: I have tried downloading XML::Xercesand trying to again install it, both manually as well as using CPAN but am getting above mentioned error message.

What can be the possible reason and what can be suggested turn around to take care of this issue ?

Update: Even after building Xerces-C, XML::Xerces module is not building and am getting following error message.

[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.

Update2Here is the error which am getting, it says there is somekind of version mismatch.

    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

回答1:


Here's a general rule: any environment variable that is named something like "ROOT" is asking for a directory, not a file.

However, it does not appear that you have installed the Xerces library, which is necessary before you install the perl module. I'll quote some portions of the output you provided, as the hint you missed as to what to do next:


"...These instruct me how to locate the Xerces header files, and the Xerces dynamic library..."

"Without these I cannot find the config.status file that was used to build your Xerces-C library"


So, did you install Xerces-C? You'll have much better results installing the Perl module after that.




回答2:


Did you try using the PPM to install XML::Xerces?



来源:https://stackoverflow.com/questions/1581212/how-do-i-install-xmlxerces

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!