You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@xerces.apache.org by Karen Schuchardt <kl...@pnl.gov> on 2001/04/24 03:03:55 UTC
Sun CC6.0 build
Sorry if its already been asked but I haven't had any luck getting to
the mail archives for a few days....
I'm trying to do a build of the xerces C 1.4.0 (stable) under Solaris
2.8 using Workshop 6.2
CC -V
CC: Sun WorkShop 6 update 2 C++ 5.3 EA2 2001/02/24
I fixed up the compile problem associated with the XMLThrow calls but I
get lots of undefined symbols when I try to link
my applications, most of which are internal to the xerces library. I
tried to step back and make the samples but there
actually are no Makefiles for them so I wasn't sure how to proceed. Now
one interesting twist is that I downloaded the zip distribution and then
made the files unix friendly. I did this because I was getting
checksum errors from the tar file and remembered that I resorted to this
when I downloaed 1.3.0 which I had to build on an IRIX system. I don't
know if this could explain why there are no Makefiles.
Has anybody else been working on a Solaris Workshop 6.x port? If so
could you send some instructions on how to get it to work?
Here is a snippet of the kinds of link errors I'm seeing:
XMLFormatter::formatBuf(const wchar_t* const, const unsigned int, const
XMLFormatter::EscapeFlags, const XMLFormatter::UnRepFlags)
/files0/karen/ecceCC6.2/devroot/platform/solaris_26/lib/libeccedav.a(DOMPrintWriter.o)
XMLUni::fgEmptyStackException_Name
/files0/karen/xerces-c-src1_4_0/lib/libxerces-c1_4.so
[Hint: static member XMLUni::fgEmptyStackException_Name must be defined
in the program]
DOMString::DOMString(const wchar_t*)
/files0/karen/ecceCC6.2/devroot/platform/solaris_26/lib/libeccedav.a(DOMPrintWriter.o)
void*operator new[](unsigned)
/files0/karen/xerces-c-src1_4_0/lib/libxerces-c1_4.so
DOM_DOMImplementation::~DOM_DOMImplementation()
/files0/karen/xerces-c-src1_4_0/lib/libxerces-c1_4.so
...v
oid XMLException::loadExceptText(const XMLExcepts::Codes)
/files0/karen/xerces-c-src1_4_0/lib/libxerces-c1_4.so
int XMLString::compareString(const unsigned short*const,const unsigned
short*const) /files0/karen/xerces-c-src1_4_0/lib/libxerces-c1_4.so
DTDAttDef::~DTDAttDef()
/files0/karen/xerces-c-src1_4_0/lib/libxerces-c1_4.so
MemBufInputSource::MemBufInputSource(const unsigned char* const, const
unsigned int, const char* const, const bool)
/files0/karen/ecceCC6.2/devroot/platform/solaris_26/lib/libecceedsi.a(DavCalculation.o)
XML88591Transcoder::XML88591Transcoder(const unsigned short*const,const
unsigned) /files0/karen/xerces-c-src1_4_0/lib/libxerces-c1_4.so
I'm compiling with the -compat flag which I put into Makefile.incl
myself since when I used the -z option to runConfigure, -compat was sent
to cc also which caused runConfigure to abort from its compiler tests.
Here's a snippet from Makefile.incl
ifeq (${PLATFORM}, SOLARIS)
ifeq (${CXX}, g++)
PLATFORM_COMPILE_OPTIONS = -fPIC -instances=static -D${PLATFORM}
-D_REENTRANT
MAKE_SHARED = ${CXX} -D${PLATFORM} -shared ${LDFLAGS}
MAKE_SHARED_C = ${CC} -D${PLATFORM} -shared ${LDFLAGS}
ifeq (${TRANSCODER}, ICU)
ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib \
-licu-uc -licudata -lm -lgen
else
ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib \
-lm -lgen
endif
else
PLATFORM_COMPILE_OPTIONS = -KPIC -mt -xs -ptr$(XML_OBJ_DIR) \
-compat -features=rtti -D${PLATFORM} -D_REENTRANT
MAKE_SHARED = ${CXX} -D${PLATFORM} -G -ptr$(XML_OBJ_DIR) ${LDFLAGS}
MAKE_SHARED_C = ${CC} -D${PLATFORM} -G ${LDFLAGS}
ifeq (${TRANSCODER}, ICU)
ALLLIBS = -mt ${LIBS} -L/usr/local/SUNWspro/lib -L/usr/ccs/lib \
-licu-uc -licudata -lc -lgen
else
ALLLIBS = -mt ${LIBS} -L/usr/local/SUNWspro/lib -L/usr/ccs/lib \
-lc -lgen
....
Please reply to me directly since I have not joined the mailer.
Thanks,
Karen
---------------------------------------------------------------------
To unsubscribe, e-mail: xerces-c-dev-unsubscribe@xml.apache.org
For additional commands, e-mail: xerces-c-dev-help@xml.apache.org
Re: Sun CC6.0 build
Posted by Alexander Zeyliger <xm...@plushkin.com>.
I am working with 6.1 with no problems.
First, get the tarball and untar it with gnu tar (the checksum
issue is a FAQ). When you build, follow the directions carefully as
they are not standard.
As for unresolved symbols, make sure you use the same compiler
for both xerces and your application. C++ mangling conventions
are not compatible between different compilers (notably g++ and CC)
Best,
AZ
---------------------------------------------------------------------
To unsubscribe, e-mail: xerces-c-dev-unsubscribe@xml.apache.org
For additional commands, e-mail: xerces-c-dev-help@xml.apache.org