Re: [bdbxml] compilation error osf1

Tom McCubbin <[email protected]> Fri, 16 Sep 2005 11:16:38 -0400
Newsgroups gmane.comp.db.dbxml.general
Message-ID <[email protected]>
It looks like a compiler bug.  It should create a default constructor 
for the PathanAllocator template by default, but it doesn't.  Tru64 can 
be a real pain in the ass :)

Try editing the file:
dbxml-2.1.8/pathan/include/pathan/XPath2MemoryManager.hpp

and adding a default constructor at line 91...something like:

  PathanAllocator()
  {
    _memMgr=NULL;
  }

That should get past this error...

-tom
Matthias Beier wrote:

>Hi,
>I try to compile dbxml-2.1.8 on osf1 (tru64 on alpha). But the pathan library
>fails for now.
>My best guess for running ./configure is
>
>--------------------------------------------------------------------
>XERCESCROOT=/home/bw1beea0/db/dbxml-2.1.8/xerces-c-src_2_6_0
>export XERCESCROOT
>gmake distclean
>./configure --prefix /home/bw1beea0/db/dbxml-2.1.8 CC=cxx CXX=cxx
>CXXFLAGS="-D__USE_STD_IOSTREAM -D_RWSTD_NO_NEW_HEADER"
>--------------------------------------------------------------------
>
>The output is:
>--------------------------------------------------------------------
>rm -f /home/bw1beea0/db/dbxml-2.1.8/pathan/core
>rm -f /home/bw1beea0/db/dbxml-2.1.8/pathan/objs/*.o
>/home/bw1beea0/db/dbxml-2.1.8/pathan/objs/*.lo
>/home/bw1beea0/db/dbxml-2.1.8/pathan/objs/*.d
>/home/bw1beea0/db/dbxml-2.1.8/pathan/objs/Pathan.hpp
>rm -f /home/bw1beea0/db/dbxml-2.1.8/pathan/pathan/pathan_config_unix.h
>rm -f /home/bw1beea0/db/dbxml-2.1.8/pathan/libpathan.la
>rm -f -r /home/bw1beea0/db/dbxml-2.1.8/pathan/.libs/
>/home/bw1beea0/db/dbxml-2.1.8/pathan/objs/.libs
>rm -f /home/bw1beea0/db/dbxml-2.1.8/pathan/lib/*.a
>/home/bw1beea0/db/dbxml-2.1.8/pathan/lib/*.la
>/home/bw1beea0/db/dbxml-2.1.8/pathan/*.so*
>rm -f Makefile.defs config.status config.cache config.log libtool
>checking $XERCESCROOT... /home/bw1beea0/db/dbxml-2.1.8/xerces-c-src_2_6_0
>checking if --enable-debug option specified... no
>checking if --enable-profile option specified... no
>checking if --enable-dependencies option specified... no
>checking build system type... alphaev6-dec-osf4.0f
>checking host system type... alphaev6-dec-osf4.0f
>checking target system type... alphaev6-dec-osf4.0f
>checking for C++ compiler default output... a.out
>checking whether the C++ compiler works... yes
>checking whether we are cross compiling... no
>checking for suffix of executables... 
>checking for suffix of object files... o
>checking whether we are using the GNU C++ compiler... no
>checking whether cxx accepts -g... yes
>checking for gcc... cxx
>checking whether we are using the GNU C compiler... no
>checking whether cxx accepts -g... yes
>checking for cxx option to accept ANSI C... none needed
>checking how to run the C preprocessor... cxx -E
>checking for egrep... grep -E
>checking for ANSI C header files... yes
>checking for sys/types.h... yes
>checking for sys/stat.h... yes
>checking for stdlib.h... yes
>checking for string.h... yes
>checking for memory.h... yes
>checking for strings.h... yes
>checking for inttypes.h... no
>checking for stdint.h... no
>checking for unistd.h... yes
>checking ieeefp.h usability... no
>checking ieeefp.h presence... no
>checking for ieeefp.h... no
>checking for a BSD-compatible install... autotools/install-sh -c
>checking for bison... no
>checking for byacc... no
>checking for flex... flex
>checking for yywrap in -lfl... no
>checking for yywrap in -ll... yes
>checking lex output file root... lex.yy
>checking whether yytext is a pointer... yes
>checking for sed... sed
>checking for perl... perl
>checking unicode support in flex... flex: unknown flag '-'
>configure: WARNING: not found. Pathan requires a version of flex supporting the
>-U (16-bit unicode) flag if you need to rebuild the lexer or parser.
>checking for a sed that does not truncate output... /usr/bin/sed
>checking for non-GNU ld... /usr/bin/ld
>checking if the linker (/usr/bin/ld) is GNU ld... no
>checking for /usr/bin/ld option to reload object files... -r
>checking for BSD-compatible nm... /usr/bin/nm -B
>checking whether ln -s works... yes
>checking how to recognise dependent libraries... pass_all
>checking dlfcn.h usability... yes
>checking dlfcn.h presence... yes
>checking for dlfcn.h... yes
>checking how to run the C++ preprocessor... cxx -E
>checking for g77... no
>checking for f77... no
>checking for xlf... no
>checking for frt... no
>checking for pgf77... no
>checking for fl32... no
>checking for af77... no
>checking for fort77... no
>checking for f90... no
>checking for xlf90... no
>checking for pgf90... no
>checking for epcf90... no
>checking for f95... no
>checking for fort... no
>checking for xlf95... no
>checking for lf95... no
>checking for g95... no
>checking whether we are using the GNU Fortran 77 compiler... no
>checking whether  accepts -g... no
>checking the maximum length of command line arguments... 16384
>checking command to parse /usr/bin/nm -B output from cxx object... ok
>checking for objdir... .libs
>checking for ar... ar
>checking for ranlib... ranlib
>checking for strip... strip
>checking if cxx static flag  works... yes
>checking for cxx option to produce PIC... 
>checking if cxx supports -c -o file.o... yes
>checking whether the cxx linker (/usr/bin/ld) supports shared libraries... yes
>checking dynamic linker characteristics... osf4.0f ld.so
>checking how to hardcode library paths into programs... immediate
>checking whether stripping libraries is possible... no
>checking if libtool supports shared libraries... yes
>checking whether to build shared libraries... yes
>checking whether to build static libraries... yes
>configure: creating libtool
>appending configuration tag "CXX" to libtool
>checking whether the cxx linker (/usr/bin/ld) supports shared libraries... yes
>checking for cxx option to produce PIC... 
>checking if cxx supports -c -o file.o... yes
>checking whether the cxx linker (/usr/bin/ld) supports shared libraries... yes
>checking dynamic linker characteristics... osf4.0f ld.so
>checking how to hardcode library paths into programs... immediate
>checking whether stripping libraries is possible... no
>appending configuration tag "F77" to libtool
>checking Xerces library name... libxerces-c.so
>checking for pthread_create in -lpthread... no
>checking for connect in -lsocket... no
>checking for gethostbyname in -lnsl... no
>checking for an ANSI C-conforming const... yes
>checking whether byte ordering is bigendian... no
>configure: creating ./config.status
>config.status: creating Makefile.defs
>config.status: creating src/config/pathan_config_unix.h
>config.status: src/config/pathan_config_unix.h is unchanged
>
>bw1beea0@bwga738:/home/bw1beea0/db/dbxml-2.1.8/pathan> gmake
>gmake[1]: Entering directory `/home/bw1beea0/db/dbxml-2.1.8/pathan/src/parser'
>mkdir /home/bw1beea0/db/dbxml-2.1.8/pathan/objs/.libs
> cxx -c -DUNIX -D__USE_STD_IOSTREAM -D_RWSTD_NO_NEW_HEADER
>-I/home/bw1beea0/db/dbxml-2.1.8/xerces-c-src_2_6_0/src
>-I/home/bw1beea0/db/dbxml-2.1.8/pathan/src
>-I/home/bw1beea0/db/dbxml-2.1.8/pathan/include QName.cpp  -DPIC -o
>/home/bw1beea0/db/dbxml-2.1.8/pathan/objs/.libs/QName.o
>cxx: Warning: QName.cpp, line 9: declaration is not qualifier compatible with
>          "QualifiedName::QualifiedName(const XMLCh *, XPath2MemoryManager *)"
>          (declared at line 20 of
>          "/home/bw1beea0/db/dbxml-2.1.8/pathan/include/pathan/internal/parser/
>          QName.hpp")
>QualifiedName::QualifiedName(const XMLCh* const qualifiedName,
>XPath2MemoryManager* memMgr) : _bDeleteStrings(false)
>---------------^
> cxx -c -DUNIX -D__USE_STD_IOSTREAM -D_RWSTD_NO_NEW_HEADER
>-I/home/bw1beea0/db/dbxml-2.1.8/xerces-c-src_2_6_0/src
>-I/home/bw1beea0/db/dbxml-2.1.8/pathan/src
>-I/home/bw1beea0/db/dbxml-2.1.8/pathan/include QName.cpp -o
>/home/bw1beea0/db/dbxml-2.1.8/pathan/objs/QName.o >/dev/null 2>&1
> cxx -c -DUNIX -D__USE_STD_IOSTREAM -D_RWSTD_NO_NEW_HEADER
>-I/home/bw1beea0/db/dbxml-2.1.8/xerces-c-src_2_6_0/src
>-I/home/bw1beea0/db/dbxml-2.1.8/pathan/src
>-I/home/bw1beea0/db/dbxml-2.1.8/pathan/include VariableBinding.cpp  -DPIC -o
>/home/bw1beea0/db/dbxml-2.1.8/pathan/objs/.libs/VariableBinding.o
> cxx -c -DUNIX -D__USE_STD_IOSTREAM -D_RWSTD_NO_NEW_HEADER
>-I/home/bw1beea0/db/dbxml-2.1.8/xerces-c-src_2_6_0/src
>-I/home/bw1beea0/db/dbxml-2.1.8/pathan/src
>-I/home/bw1beea0/db/dbxml-2.1.8/pathan/include VariableBinding.cpp -o
>/home/bw1beea0/db/dbxml-2.1.8/pathan/objs/VariableBinding.o >/dev/null 2>&1
>gmake[1]: Leaving directory `/home/bw1beea0/db/dbxml-2.1.8/pathan/src/parser'
>gmake[1]: Entering directory `/home/bw1beea0/db/dbxml-2.1.8/pathan/src/DOMutils'
> cxx -c -DUNIX -D__USE_STD_IOSTREAM -D_RWSTD_NO_NEW_HEADER
>-I/home/bw1beea0/db/dbxml-2.1.8/xerces-c-src_2_6_0/src
>-I/home/bw1beea0/db/dbxml-2.1.8/pathan/src
>-I/home/bw1beea0/db/dbxml-2.1.8/pathan/include XMLChCompare.cpp  -DPIC -o
>/home/bw1beea0/db/dbxml-2.1.8/pathan/objs/.libs/XMLChCompare.o
> cxx -c -DUNIX -D__USE_STD_IOSTREAM -D_RWSTD_NO_NEW_HEADER
>-I/home/bw1beea0/db/dbxml-2.1.8/xerces-c-src_2_6_0/src
>-I/home/bw1beea0/db/dbxml-2.1.8/pathan/src
>-I/home/bw1beea0/db/dbxml-2.1.8/pathan/include XMLChCompare.cpp -o
>/home/bw1beea0/db/dbxml-2.1.8/pathan/objs/XMLChCompare.o >/dev/null 2>&1
> cxx -c -DUNIX -D__USE_STD_IOSTREAM -D_RWSTD_NO_NEW_HEADER
>-I/home/bw1beea0/db/dbxml-2.1.8/xerces-c-src_2_6_0/src
>-I/home/bw1beea0/db/dbxml-2.1.8/pathan/src
>-I/home/bw1beea0/db/dbxml-2.1.8/pathan/include XStr.cpp  -DPIC -o
>/home/bw1beea0/db/dbxml-2.1.8/pathan/objs/.libs/XStr.o
> cxx -c -DUNIX -D__USE_STD_IOSTREAM -D_RWSTD_NO_NEW_HEADER
>-I/home/bw1beea0/db/dbxml-2.1.8/xerces-c-src_2_6_0/src
>-I/home/bw1beea0/db/dbxml-2.1.8/pathan/src
>-I/home/bw1beea0/db/dbxml-2.1.8/pathan/include XStr.cpp -o
>/home/bw1beea0/db/dbxml-2.1.8/pathan/objs/XStr.o >/dev/null 2>&1
> cxx -c -DUNIX -D__USE_STD_IOSTREAM -D_RWSTD_NO_NEW_HEADER
>-I/home/bw1beea0/db/dbxml-2.1.8/xerces-c-src_2_6_0/src
>-I/home/bw1beea0/db/dbxml-2.1.8/pathan/src
>-I/home/bw1beea0/db/dbxml-2.1.8/pathan/include UTF8Str.cpp  -DPIC -o
>/home/bw1beea0/db/dbxml-2.1.8/pathan/objs/.libs/UTF8Str.o
> cxx -c -DUNIX -D__USE_STD_IOSTREAM -D_RWSTD_NO_NEW_HEADER
>-I/home/bw1beea0/db/dbxml-2.1.8/xerces-c-src_2_6_0/src
>-I/home/bw1beea0/db/dbxml-2.1.8/pathan/src
>-I/home/bw1beea0/db/dbxml-2.1.8/pathan/include UTF8Str.cpp -o
>/home/bw1beea0/db/dbxml-2.1.8/pathan/objs/UTF8Str.o >/dev/null 2>&1
>gmake[1]: Leaving directory `/home/bw1beea0/db/dbxml-2.1.8/pathan/src/DOMutils'
>gmake[1]: Entering directory `/home/bw1beea0/db/dbxml-2.1.8/pathan/src/sequence'
> cxx -c -DUNIX -D__USE_STD_IOSTREAM -D_RWSTD_NO_NEW_HEADER
>-I/home/bw1beea0/db/dbxml-2.1.8/xerces-c-src_2_6_0/src
>-I/home/bw1beea0/db/dbxml-2.1.8/pathan/src
>-I/home/bw1beea0/db/dbxml-2.1.8/pathan/include Sequence.cpp  -DPIC -o
>/home/bw1beea0/db/dbxml-2.1.8/pathan/objs/.libs/Sequence.o
>cxx: Error: /usr/include/cxx/memory, line 138: no default
>          constructor exists for class "PathanAllocator<Item::Ptr>"
>          detected during:
>            instantiation of "_RWrwstd::_RWrw_basis<T,
>                      Base>::_RWrw_basis(const _RWrwstd::_RWrw_basis<T, Base>
>                      &) [with T=std::vector<Item::Ptr,
>                      PathanAllocator<Item::Ptr>>::iterator,
>                      Base=std::vector<Item::Ptr,
>                      PathanAllocator<Item::Ptr>>::allocator_type]" at line 141
>            instantiation of "_RWrwstd::_RWrw_basis<T, Base>
>                      _RWrwstd::_RWrw_basis<T, Base>::operator=(const T &)
>                      [with T=std::vector<Item::Ptr,
>                      PathanAllocator<Item::Ptr>>::iterator,
>                      Base=std::vector<Item::Ptr,
>                      PathanAllocator<Item::Ptr>>::allocator_type]" at line
>                      194 of "/usr/include/cxx/vector"
>            instantiation of "void std::vector<T,
>                      Allocator>::_RWinitn(std::vector<T,
>                      Allocator>::size_type, const T &) [with T=Item::Ptr,
>                      Allocator=PathanAllocator<Item::Ptr>]" at line 269 of
>                      "/usr/include/cxx/vector"
>            instantiation of "std::vector<T, Allocator>::vector(int, const T
>                      &, const Allocator &) [with T=Item::Ptr,
>                      Allocator=PathanAllocator<Item::Ptr>]" at line 41 of
>                      "Sequence.cpp"
>    _RWrw_basis(const _RWrw_basis& b) : _RWdata_(b._RWdata_) {;}
>-------------------------------------------------------------^
>cxx: Info: 1 error detected in the compilation of "Sequence.cpp".
>gmake[1]: *** [Sequence.lo] Error 1
>gmake[1]: Leaving directory `/home/bw1beea0/db/dbxml-2.1.8/pathan/src/sequence'
>gmake: *** [subdirs] Error 2
>
>-----------------------------------------------------------------------------
>Using gcc the result is worse.
>I'm not very experienced in C++, but I can't imagine, the error can be
>surpressed by some extra flags. But even if so, I have no more idea, what can be
>done.
>Any idea ?
>Kindly regards
>M.Beier
>
>
>
>------------------------------------------
>To remove yourself from this list, send an
>email to [email protected]
>  
>



------------------------------------------
To remove yourself from this list, send an
email to [email protected]