Good luck.  It probably won't work.  Here are the list of stumbling blocks 
you'll have to overcome to get it to "seem" to work.  If you use iostreams 
w/GCC, it definitely won't be stable.

1)  The pre-built binary on the apache site is built with Forte C++.  It 
won't link with g++.  The name mangling is different between the two 
compilers.  So you'll probably want to try re-building a G++ shared object 
with gcc.

2)  Rebuilding the xerces .so with GCC on Solaris 8 (at least) doesn't work 
out of the box.  I had to do a number of manual steps for it to build.  
These included trying to baby ./runConfigure to complete building the 
Makefiles and such.  I also have to move a number of files by hand into 
certain directories and a few other things I don't remember right now.  Most 
of this seemed to do with the platform specific stuff.

3)  So you can at least get a Solaris 8 build of xerces.so built with gcc.  
Then you'll find out that with that version of gcc, there exists a defect in 
libstdc++, particularly with STL strings and the iostreams (new) on this 
platform.  This defect only really shows itself on multiprocessor sparc 
boxen.  It has been fixed in gcc 3.0.x -cvs (not 3.0.3).  This last point 
may or may not affect you directly, as I am refering to code OUTSIDE of 
xerces (we experienced this defect in our code), but I suspect the chances 
of you using iostream code is high enough to warrant this warning.

4)  Be wary of what construct you use to create DOM_Documents.  We had been 
using DOM_Document::createDocument() for about a year, and is wasn't until 
we scaled up a bit and went multithreaded that we learned that this isn't 
the "correct" way to create DOM_Documents.  Use 
DOM_Implementation.createDocument() instead.  The former function will 
return you a DOM_Document that you can actually use, up until the point that 
you attempt to "print" it out using XMLFormatter.  Then you'll realize that 
unless you set the document name, you'll get core dumps every time.  This 
probably isn't a defect so much in Xerces as it is a gotcha for improper 
usage (I haven't verified if this has actually been logged as a defect or 
fixed, btw).  I very much wish that function on DOM_Document wasn't on that 
interface.  It's misleading or at least not completely documented for how to 
actually use it (i.e. you HAVE to do at least 1 more function call).  Of 
course, the example codes do show the latter, more correct way.

After about a month of debugging, we found out about issue #3 and #4 above, 
and have sinced moved to Forte C++ (Workshop) Update 1.  Forte C++ WS update 
2 has severly broken exception handling.  I still personally regret that we 
can't use gcc any longer, as we had been using that for over a year until we 
switched to new iostreams, integrated with ACE (Adaptive Communication 
Environment), and made our application multithreaded.

Mark

>From: Flavio Oliveira <[EMAIL PROTECTED]>
>Reply-To: [EMAIL PROTECTED]
>To: [EMAIL PROTECTED]
>Subject: Xerces-C++ for Solaris 8
>Date: Mon, 4 Mar 2002 08:41:49 -0300 (ART)
>
>Hi,
>
>I am using the gcc-2.95.3 for solaris 8.0.
>I will go to get to use the Xerces-C++ library in my
>applications?
>
>Thank you, flavio
>
>E-Mail: [EMAIL PROTECTED]
>
>
>_______________________________________________________________________________________________
>Yahoo! Empregos
>O trabalho dos seus sonhos pode estar aqui. Cadastre-se hoje mesmo no 
>Yahoo! Empregos e tenha acesso a milhares de vagas abertas!
>http://br.empregos.yahoo.com/
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: [EMAIL PROTECTED]
>For additional commands, e-mail: [EMAIL PROTECTED]
>


_________________________________________________________________
MSN Photos is the easiest way to share and print your photos: 
http://photos.msn.com/support/worldwide.aspx


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to