List:MySQL++« Previous MessageNext Message »
From:celliott Date:August 19 2004 4:31pm
Subject:Compilation Problems With GCC V3.4.1
View as plain text  
I searched the lists quite a bit before sending this email.  Here is a
transcript of my attempt at building mysql++ on RH Fedora Core 1.  W / GCC
v3.4.1.  I am running Kernel 2.6.7-1.494. and Mysql Version 3.23.58 for
redhat-linux-gnu on i386



[root@surveys mysql++-1.7.9]# patch -p 1 < ../mysql++-gcc-3.0.patch
patching file examples/Makefile.in
patching file examples/cgi_image.cc
patching file examples/complic1.cc
patching file examples/custom1.cc
patching file examples/custom2.cc
patching file examples/custom3.cc
patching file examples/custom4.cc
patching file examples/fieldinf1.cc
patching file examples/load_file.cc
patching file examples/populate.cc
patching file examples/resetdb.cc
patching file examples/simple1.cc
patching file examples/sinisa_ex.cc
patching file examples/updel_x_.cc
patching file examples/util.cc
patching file sqlplusint/Makefile.in
patching file sqlplusint/coldata.cc
patching file sqlplusint/coldata1.hh
patching file sqlplusint/coldata4.hh
patching file sqlplusint/compare1.hh
patching file sqlplusint/connection.cc
patching file sqlplusint/connection1.hh
patching file sqlplusint/connection2.hh
patching file sqlplusint/const_string1.hh
patching file sqlplusint/custom.hh
patching file sqlplusint/custom.pl
patching file sqlplusint/datetime1.hh
patching file sqlplusint/datetime2.hh
patching file sqlplusint/exceptions.hh
patching file sqlplusint/exceptions.hh.in
patching file sqlplusint/field_names.cc
patching file sqlplusint/field_names1.hh
patching file sqlplusint/manip.cc
patching file sqlplusint/manip1.hh
patching file sqlplusint/query.cc
patching file sqlplusint/query1.hh
patching file sqlplusint/query2.hh
patching file sqlplusint/result1.hh
patching file sqlplusint/result2.hh
patching file sqlplusint/row1.hh
patching file sqlplusint/row2.hh
patching file sqlplusint/set.cc
patching file sqlplusint/set1.hh
patching file sqlplusint/set2.hh
patching file sqlplusint/sql_query.cc
patching file sqlplusint/sql_query1.hh
patching file sqlplusint/sql_string1.hh
patching file sqlplusint/string_util.cc
patching file sqlplusint/string_util.hh
patching file sqlplusint/type_info.cc
patching file sqlplusint/type_info1.hh
patching file sqlplusint/vallist.cc
patching file sqlplusint/vallist1.hh


[root@surveys mysql++-1.7.9]# patch -p 1 < ../mysql++-gcc-3.2.patch
patching file configure.in
patching file sqlplusint/coldata1.hh
patching file sqlplusint/compare1.hh
patching file sqlplusint/connection.cc
patching file sqlplusint/exceptions.hh.in
patching file sqlplusint/null1.hh
patching file sqlplusint/null2.hh
patching file sqlplusint/set3.hh


[root@surveys mysql++-1.7.9]# patch -p 1 < ../mysqlplus-gcc-3.4.patch
patching file sqlplusint/compare1.hh
patching file sqlplusint/connection1.hh
patching file sqlplusint/datetime.cc
patching file sqlplusint/datetime1.hh
patching file sqlplusint/exceptions.hh
patching file sqlplusint/field_names1.hh
patching file sqlplusint/field_types1.hh
patching file sqlplusint/manip.cc
patching file sqlplusint/manip1.hh
patching file sqlplusint/query.cc
patching file sqlplusint/resiter1.hh
patching file sqlplusint/result1.hh
patching file sqlplusint/row2.hh
patching file sqlplusint/set1.hh
patching file sqlplusint/set3.hh
patching file sqlplusint/sql_query.cc
patching file sqlplusint/sql_query1.hh
patching file sqlplusint/stream2string3.hh
patching file sqlplusint/type_info.cc



[root@surveys mysql++-1.7.9]# ./configure
creating cache ./config.cache
checking for a BSD compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking whether make sets ${MAKE}... yes
checking for working aclocal... found
checking for working autoconf... found
checking for working automake... found
checking for working autoheader... found
checking for working makeinfo... found
checking whether make sets ${MAKE}... (cached) yes
checking host system type... i686-pc-linux-gnu
checking build system type... i686-pc-linux-gnu
checking for ranlib... ranlib
checking for gcc... gcc
checking whether the C compiler (gcc  ) works... yes
checking whether the C compiler (gcc  ) is a cross-compiler... no
checking whether we are using GNU C... yes
checking whether gcc accepts -g... yes
checking for ld used by GCC... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD-compatible nm... /usr/bin/nm -B
checking whether ln -s works... yes
updating cache ./config.cache
loading cache ./config.cache within ltconfig
checking for object suffix... o
checking for executable suffix... no
checking for gcc option to produce PIC... -fPIC
checking if gcc PIC flag -fPIC works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.lo... yes
checking if gcc supports -fno-rtti -fno-exceptions ... no
checking if gcc static flag -static works... -static
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking whether the linker (/usr/bin/ld) supports shared libraries... yes
checking command to parse /usr/bin/nm -B output... ok
checking how to hardcode library paths into programs... immediate
checking for /usr/bin/ld option to reload object files... -r
checking dynamic linker characteristics... Linux ld.so
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking for objdir... .libs
creating libtool
updating cache ./config.cache
loading cache ./config.cache
checking whether to enable maintainer-specific portions of Makefiles... no
checking for MySQL library directory... /usr/local/lib/mysql
checking for MySQL include directory... /usr/local/include/mysql
checking for gcc... (cached) gcc
checking whether the C compiler (gcc -g -O2  -L/usr/local/lib/mysql)
works... yes
checking whether the C compiler (gcc -g -O2  -L/usr/local/lib/mysql) is a
cross-compiler... no
checking whether we are using GNU C... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for c++... c++
checking whether the C++ compiler (c++   -L/usr/local/lib/mysql) works... yes
checking whether the C++ compiler (c++   -L/usr/local/lib/mysql) is a
cross-compiler... no
checking whether we are using GNU C++... yes
checking whether c++ accepts -g... yes
checking for main in -lintl... no
checking for main in -lsocket... no
checking for main in -lnsl... yes
checking for mysql_store_result in -lmysqlclient... yes
checking if malloc debugging is wanted... no
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for working const... yes
checking for strtol... yes
updating cache ./config.cache
creating ./config.status
creating Makefile
creating sqlplusint/Makefile
creating examples/Makefile
creating config.h
creating sqlplusint/exceptions.hh



[root@surveys mysql++-1.7.9]# make
make  all-recursive
make[1]: Entering directory `/root/mysql++-1.7.9'
Making all in sqlplusint
make[2]: Entering directory `/root/mysql++-1.7.9/sqlplusint'
/bin/sh ../libtool --mode=compile c++ -DHAVE_CONFIG_H -I. -I. -I.. -I.
-I../sqlplusint  -I/usr/local/include/mysql  -g -O2 -c coldata.cc
mkdir .libs
c++ -DHAVE_CONFIG_H -I. -I. -I.. -I. -I../sqlplusint
-I/usr/local/include/mysql -g -O2 -Wp,-MD,.deps/coldata.pp -c  -fPIC -DPIC
coldata.cc -o .libs/coldata.lo
In file included from coldata1.hh:8,
                 from coldata2.hh:5,
                 from coldata3.hh:12,
                 from coldata4.hh:6,
                 from coldata.cc:3:
type_info1.hh: In constructor
`mysql_ti_sql_type_info::mysql_ti_sql_type_info()':
type_info1.hh:31: error: uninitialized member
`mysql_ti_sql_type_info::_base_type' with `const' type `const unsigned
char'
type_info1.hh:31: error: uninitialized member
`mysql_ti_sql_type_info::_default' with `const' type `const bool'
In file included from coldata4.hh:6,
                 from coldata.cc:3:
coldata3.hh: In member function `mysql_ColData<Str>::operator MysqlNull<T,
B>() const':
coldata3.hh:19: error: there are no arguments to `size' that depend on a
template parameter, so a declaration of `size' must be available
coldata3.hh:19: error: (if you use `-fpermissive', G++ will accept your
code, but allowing the use of an undeclared name is deprecated)
In file included from coldata.cc:3:
coldata4.hh: In member function `Type mysql_ColData<Str>::conv(Type) const':
coldata4.hh:23: error: there are no arguments to `c_str' that depend on a
template parameter, so a declaration of `c_str' must be available
make[2]: *** [coldata.lo] Error 1
make[2]: Leaving directory `/root/mysql++-1.7.9/sqlplusint'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/root/mysql++-1.7.9'
make: *** [all-recursive-am] Error 2
[root@surveys mysql++-1.7.9]#


I have also tried this with the 3.2.2 patch as well and it did not help. 
I hope this isn't a stupid repetition of a question asked 100 times.

Thanks,

Chad Elliott
celliott@stripped

Thread
Compilation Problems With GCC V3.4.1celliott19 Aug
  • Re: Compilation Problems With GCC V3.4.1Warren Young19 Aug