Re: Problem building XML::Xerces v2.5.0

[email protected] (Jason E. Stewart) Tue, 22 Feb 2005 09:41:56 +0530
Newsgroups gmane.text.xml.xerces-p.devel
Message-ID <[email protected]>
"Palisetti, Krishna_Mohan" <[email protected]> writes:

> "/u/palisetk/tmp/xerces-c-src_2_5_0/include/xercesc/internal/XSerializeE
> ngine.hpp", line 477: Error: Multiple declaration for
> xercesc_2_5::XSerializeEngine::operator<<(char).
> "/u/palisetk/tmp/xerces-c-src_2_5_0/include/xercesc/internal/XSerializeE
> ngine.hpp", line 497: Error: Multiple declaration for
> xercesc_2_5::XSerializeEngine::operator>>(char&).
> 2 Error(s) detected.

>    477             XSerializeEngine& operator<<(bool);

>    497             XSerializeEngine& operator>>(bool&);

Notice that it's declaring errors for operator>>(char&), but the
header files actually define the operartor for bool - this is a *very*
common problem with old Perl's - they were built with something aking
to:

  #define bool char

So you will get this compile error.

If you modify Xerces.cpp around line 826, you should see a huge number
of #ifdef FOO => #undef FOO, just add this:

  #ifdef bool
    #undef bool
  #endif /* bool */

and try compiling again. 

Perl 5.6.1 is seriously old - I would consider getting it upgraded. 

Cheers,
jas.