I have successfully built Xerces-C 1.1.0, using the Sun Visual Workshop C++ 5.0 compiler on a Sun Sparc Ultra 2 running Solaris 7.
Note that users of C++ 5.0 cannot use the binaries generated with the (now obsolete) C++ 4.2 compiler; see http://docs.sun.com:80/ab2/coll.32.5/CPPMIGRATE/@Ab2PageView/1236?Ab2Lang=C&Ab2Enc=iso-8859-1 . The port is not straightforward, because there are problems in template instantiation. Static template instantiation fails with the following error message: ld: fatal: symbol `RefHashTableOfEnumerator<DTDAttDef>::~RefHashTableOfEnumerator #Nvariant 1()' is multiply defined: (file /usr/local/misc/tools/src/xerces-c-src_1_1_0/obj/DTDAttDefList.o and file /usr/local/misc/tools/src/xerces-c-src_1_1_0/obj/DTDElementDecl.o); I do not know why this error occurs; perhaps in C++ 5.0 the scope of a templated child's destructor must be global to ensure that it is called (rather than the parent) during garbage collection? External template instantiation cannot be used because the current build scheme copies object files are to a new location before library construction (but does not copy the template database). My solution uses explicit template instantiation. I wrote a short C++ file that explicitly instantiates each template needed by the xerces-c1_1 library. I would be glad to submit it to the Apache Software Foundation if there is interest in this port. I do not subscribe to the xerces-dev mailing list because I do not have time to read it so please contact me directly. -- ____ =====/ ___ Dr. Gary M. Heiligman tel: 650-604-1006 ====/ / __ Sterling Software FAX: 650-604-0985 ===/ / /== NASA Ames Research Center __/ / /=== Mail Stop 207-1 Sterling SOFIA Projects ___/ /==== Moffett Field, CA 94035-1000 office: 650-604-1100 ____/===== [EMAIL PROTECTED]