I poked around in the Xerces sources and I found a file called Makefile.incl. In this file I found the following
ifeq statement
Quote:
ifeq (${PLATFORM}, SOLARIS)
ifeq (${GXX}, yes)
PLATFORM_COMPILE_OPTIONS = -fPIC -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 \
-licuuc -licudata -lm -lgen
else
ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib \
-lm -lgen
endif
ifeq (${MESSAGELOADER}, ICU)
ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib \
-licuuc -licudata -lXercesMessages -lm -lgen
endif
else
PLATFORM_COMPILE_OPTIONS = -KPIC -mt -xs -ptr$(XML_OBJ_DIR) \
-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} -licuuc -licudata
else
ALLLIBS = -mt ${LIBS}
endif
|
If I'm right a ifeq statement is issued to check if the compiler was GXX or not. In my case it was not, because I used cc and CC. So in my case [I]-ptr$(XML_OBJ_DIR)[/I} are set in the variables PLATFORM_COMPILE_OPTIONS and MAKE_SHARED_C.
I will try two things:
1. Compile xerces with cc and CC without the -ptr flag.
and if that does not work
2. Compile xerces with gcc