On Thu, Apr 05, 2001 at 08:06:27PM +0400, konst wrote:
Hello All,
>
> I am trying to compile (I cannot name this activity 'porting')
> xerces-c1_4 on DYNIX/ptx numa 4.0 V4.4.7 i386
> I have GNU make and GCC 2.95.3 installed and configured
I am sorry that I wrote previos letter without thorough
investigating of the problem on my own.
Now I achive some success and wish to share it with other people.
I found that support for ptx platform is limited, it doesn't
consider possibility of using gcc/g++
So I make the following changes to src/Makefile.incl
--- Makefile.incl.orig Fri Apr 6 14:03:03 2001
+++ Makefile.incl Fri Apr 6 14:03:02 2001
@@ -167,18 +167,18 @@
#================= PTX SPECIFIC OPTIONS ===========================
ifeq (${PLATFORM}, PTX)
-PLATFORM_CPP_COMPILER = c++
-PLATFORM_C_COMPILER = cc
+PLATFORM_CPP_COMPILER = g++
+PLATFORM_C_COMPILER = gcc
ifeq (${TRANSCODER}, ICU)
- PLATFORM_COMPILE_OPTIONS = -KPIC -Kthread -D${PLATFORM}
+ PLATFORM_COMPILE_OPTIONS = -fPIC -D${PLATFORM} -DAPP_NO_THREADS
ALLLIBS = ${LIBS} -L${ICUROOT}/lib -lm -lgen -licu-uc
else
- PLATFORM_COMPILE_OPTIONS = -KPIC -Kthread -D${PLATFORM}
+ PLATFORM_COMPILE_OPTIONS = -fPIC -D${PLATFORM} -DAPP_NO_THREADS
ALLLIBS = ${LIBS} -lm -lgen
endif
OBJ_OUT=${ALL_OBJECTS_DIR}/
-MAKE_SHARED = ${PLATFORM_CPP_COMPILER} -D${PLATFORM} -G
-MAKE_SHARED_C = ${PLATFORM_C_COMPILER} -D${PLATFORM} -G
+MAKE_SHARED = ${PLATFORM_CPP_COMPILER} -D${PLATFORM} -G -shared
+MAKE_SHARED_C = ${PLATFORM_C_COMPILER} -D${PLATFORM} -G -shared
EXTRA_LINK_OPTIONS = -lm -lgen
SHLIBSUFFIX=.so
endif
----------------------------------
I think it would be better to add testing for compiler version
like in UNIXWARE and Solaris sections, but I haven't native c++
and cannot test this
I set up things for single threaded library (like docs advises to
do on solaris). I think this should be default on PTX.
the following problem I solved by removing <wctype.h> inclusion
> In file included from IconvTransService.cpp:68:
> /usr/include/wchar.h:45: warning: `NULL' redefined
> /usr/local/lib/gcc-lib/i386-sequent-sysv4/2.95.3/include/stdio.h:118: warning:
> IconvTransService.cpp: In method `int IconvTransService::compareIString(const X
> IconvTransService.cpp:127: `_L' undeclared (first use this function)
> IconvTransService.cpp:127: (Each undeclared identifier is reported only once
> IconvTransService.cpp:127: for each function it appears in.)
> IconvTransService.cpp: In method `bool IconvTransService::isSpace(short unsigne
> IconvTransService.cpp:170: `_S' undeclared (first use this function)
> IconvTransService.cpp:170: implicit declaration of function `int isspace(...)'
> make[2]: *** [IconvTransService.o] Error 1
after that I have the library build
I make changes to Makefile.incl in samples and tests directories
like I did in src and in addition I changed EXTRA_LINK_OPTIONS
< EXTRA_LINK_OPTIONS=-lm -lgen
---
> EXTRA_LINK_OPTIONS=-lm -lgen -lsocket -lnsl
For reason that is unclear to me
after running ruConfigure -pptc -cgcc -xg++
PLATFORM is set to UNKNOWN in Makefile and */Makefile in samples
that leads to following error
> ---------------------------------------------------------------
> Building SAXPrint
> cd SAXPrint ; make ; cd ..
> make[1]: Entering directory `/home/konst/xerces-c-src1_4_0/samples/SAXPrint'
> mkdir -p /home/konst/xerces-c-src1_4_0/bin/obj/SAXPrint
> cc -I. -I/home/konst/xerces-c-src1_4_0/include
> -o /home/konst/xerces-c-src1_4_0/bin/obj/SAXPrint/SAXPrint.o
> /home/konst/xerces-c-src1_4_0/samples/SAXPrint/SAXPrint.cpp
> ld: /home/konst/xerces-c-src1_4_0/samples/SAXPrint/SAXPrint.cpp:
> fatal error: file type unknown to the library used by ld
> make[1]: *** [/home/konst/xerces-c-src1_4_0/bin/obj/SAXPrint/SAXPrint.o] Error
> ----------------------------------------------------------
I manually changed it to
PLATFORM = PTX and it helps.
This didn't happend to tests
After that I ran exampels and tests
DTest failed in the following way :
konst@[numa]://...bin>./DTest
Warning!!! DOM_Attr's 'setValue' to 'null' method failed to work properly!
*****The DOM_Attr method calls listed above failed, all others worked correctly.*****
Warning!!! DOM_Attr's 'setValue' to 'null' method failed to work properly!
*****The DOM_Attr method calls listed above failed, all others worked correctly.*****
DOM reference counted memory alloction statistics:
live string handles: 0
total string handles: 243
live string buffers: 0
total string buffers: 274
live nodeImpls: 0
total nodeImpls: 220
live NamedNodeMaps: 0
total NamedNodeMaps: 34
This is probably because it calles setValue(null)
and then compares it to "".
I think that only XML guru can tell how it should be.
I hope this help to improve support of DYNIX/ptx
in xerces-c
Sorry for bad English.
--
Sincerely Yours, Konstantin Kivi, Russia, [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]