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 Mathew Ericson <ma...@agilent.com> on 2002/11/20 20:31:17 UTC

gcc 3.2 hpux11.00 build problems

Dear Xerces-C developers,

Trying to build Xerces 2.1.0 on Hpux-11.00 with GCC3.2. Steps required:

1. Set XERCESCROOT environment variable
2. cd $XERCESCROOT ; ./runConfigure -php-11 \
                                      -c gcc \
                                      -x g++ \
                                      -d \
                                      -m inmem \
                                      -n fileonly \
                                      -t native \
                                      -r none \
                                      -b 32 \
                                      -l -fPIC \
                                      -P /opt/xerces \
                                      -C --verbose 2>&1

      NOTE: I have my PATH set correctly to pick up gcc/g++/gmake/gas and
            then use /usr/bin/ld (HP native).

3. Modified utils/Transcoders/Iconv/IconcTransService.cpp (line71) to
wrap XML_HPUX ifdef

68a69
  > #if !defined(XML_HPUX) // add this wrapper condition for hpux
73a75
  > #endif

-or the final result (shown below)

#if !defined(XML_HPUX) // add this wrapper condition for hpux
      #if defined (XML_GCC) || defined (XML_PTX) || defined (XML_IBMVAOS2)
         #if !defined(XML_OPENSERVER)
          #include <wctype.h>
         #endif
      #endif
#endif

4. Modified Makefile.incl (diff shown below)

379,383c379,383
<   ifeq (${CXX}, aCC)
<     PLATFORM_COMPILE_OPTIONS = -D_HP_UX -DHPaCC \
<         -D${OSVERDEFINE} +DAportable +Z
<     MAKE_SHARED = ${CXX} -D${PLATFORM} ${LDFLAGS}
<     MAKE_SHARED_C = ${CC} -D${PLATFORM} ${LDFLAGS}
---
  >   ifeq (${CXX}, g++)
  >     PLATFORM_COMPILE_OPTIONS = -D_HP_UX \
  >         -D${OSVERDEFINE} -fPIC
  >     MAKE_SHARED = ${CXX} -D${PLATFORM} -b ${LDFLAGS}
  >     MAKE_SHARED_C = ${CC} -D${PLATFORM} -b ${LDFLAGS}
394c394
<     EXTRA_LINK_OPTIONS = -b -Wl,+s -Wl,+b,.
---
  >     EXTRA_LINK_OPTIONS =
-L/usr/gnu/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2 -Wl,-b -Wl,+s -Wl,+b,.
417c417,418
<     EXTRA_LINK_OPTIONS = -b -Wl,+s -Wl,+b,. -Wl,-a,shared
---
  >
  >     EXTRA_LINK_OPTIONS =
-L/usr/gnu/lib/gcc-lib/hppa2.0w-hp-hpux11.00/3.2 -Wl,-b -Wl,+s -Wl,+b,.
-Wl,-a,shared

5. make (which fails on link stage with error shown below) all files
have been built with -fPIC as specified in the original options

/usr/ccs/bin/ld: CODE_ONE_SYM fixup to non-code subspace in file
/usr/ccs/lib/crt0.o - shared library must be position independent. Use
+z or +Z to recompile.
make[1]: ***
[/xerces/src/xerces-c-src_2002-11-19/lib/libxerces-c.sl.21.0] Error 1
make[1]: Target `ALL' not remade because of errors.


Any ideas?

thanks
mathew

-- 
Mathew Ericson
CC/Unix System Administrator
Agilent Technologies, Inc.
613 9210 5956 Tel


---------------------------------------------------------------------
To unsubscribe, e-mail: xerces-c-dev-unsubscribe@xml.apache.org
For additional commands, e-mail: xerces-c-dev-help@xml.apache.org