You are viewing a plain text version of this content. The canonical link for it is here.
Posted to general@xerces.apache.org by Dudley Irish <di...@arsmagna.com> on 2000/02/10 02:09:40 UTC
HP/UX11 and g++ compilation/linking problems.
I have applied the following changes to the source in my attempt to
get Xerces to compile on HP/UX 11.00 with g++.
1) New config.guess and config.sub, taken from GCC. The ones in the
distribution don't recognize the OS version.
2) Added the following to Makefile.incl in the HP/UX specific section.
ifeq (${CXX}, g++)
COMMON_COMPILE_OPTIONS = -fPIC -instances=static \
-D${PLATFORM} -D_POSIX_C_SOURCE=199506L -D_HP_UX \
-D${OSVERDEFINE}
ifeq ($(MODULE), dom)
PLATFORM_COMPILE_OPTIONS = -DDOM_PROJ $(COMMON_COMPILE_OPTIONS)
else
PLATFORM_COMPILE_OPTIONS = $(COMMON_COMPILE_OPTIONS)
endif
MAKE_SHARED = $(CXX) $(PLATFORM_COMPILE_OPTIONS) $(XML_INCL) -shared
MAKE_SHARED_C = $(CC) $(PLATFORM_COMPILE_OPTIONS) $(XML_INCL) -shared
ifeq (${TRANSCODER}, ICU)
ALLLIBS = ${LIBS} -licu-uc
else
ALLLIBS = ${LIBS}
endif
SHLIBSUFFIX=.sl
endif
3) In HPPlatformUtils.cpp replace "#include <unistd.h>" with
"extern int dup __((int));". <unistd.h> has prototype declarations
that conflict with pthreads.h. However, HPPPlatformUtils.cpp needs
a definition of dup.
4) Remove "#include <wctype.h>" from IconvTransService.cpp. It should
not be included, but I don't know what else turning off XML_GNUG
will change.
I have two problems, the easy one is how to resolve 3 & 4 in a more
sustainable manor. The harder one is that when I compile the sample
programs, they all core dump during the initialization. I am hoping
that somebody who has used HP/UX and g++ more than I will recognize
the problem and have a sugestion. I assume it is a library
incompatability problem, but I am at a lost as to how to track it
down.
Thanks in advance,
Dudley Irish