List:General Discussion« Previous MessageNext Message »
From:s.zingler Date:April 24 2006 12:51pm
Subject:Compiling DBD::mysql with MySQL 5.0.20a
View as plain text  
>Description:
	I have Problem Compiling DBD::mysql with MySQL 5.0.20a.
	I get the following Message:

meyer-lx:~/.cpan/build/DBD-mysql-3.0002 # make test
PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0,
'blib/lib', 'blib/arch')" t/*.t
t/00base.............install_driver(mysql) failed: Can't load
'/root/.cpan/build/DBD-mysql-3.0002/blib/arch/auto/DBD/mysql/mysql.so' for module
DBD::mysql: /root/.cpan/build/DBD-mysql-3.0002/blib/arch/auto/DBD/mysql/mysql.so:
undefined symbol: __builtin_delete at
/usr/lib/perl5/5.8.7/i586-linux-thread-multi/DynaLoader.pm line 230.

I get this kind of error since MySQL 5.0.20.

>How-To-Repeat:

	Install DBI 1.50
	Install MySQL Development Files 5.0.20a
	Install DBD::mysql 3.0002

	run 
	perl Makefile.PL
	make
	make test
	Now i get errors.
	
Here the Output:

meyer-lx:~/.cpan/build/DBD-mysql-3.0002 # perl Makefile.PL
I will use the following settings for compiling and testing:

  cflags        (mysql_config) = -I/usr/include/mysql -I/usr/local/include
-L/usr/local/lib -mcpu=i486 -fno-strength-reduce
  embedded      (mysql_config) = 
  libs          (mysql_config) = -L/usr/lib/mysql -lmysqlclient -lz -lcrypt -lnsl -lm -lc
-lnss_files -lnss_dns -lresolv -lc -lnss_files -lnss_dns -lresolv
  mysql_config  (guessed     ) = mysql_config
  nocatchstderr (default     ) = 0
  nofoundrows   (default     ) = 0
  ssl           (guessed     ) = 0
  testdb        (default     ) = test
  testhost      (default     ) = 
  testpassword  (default     ) = 
  testsocket    (default     ) = 
  testuser      (default     ) = 

To change these settings, see 'perl Makefile.PL --help' and
'perldoc INSTALL'.

Checking if your kit is complete...
Looks good
Using DBI 1.50 (for perl 5.008007 on i586-linux-thread-multi) installed in
/usr/lib/perl5/site_perl/5.8.7/i586-linux-thread-multi/auto/DBI/
Writing Makefile for DBD::mysql



meyer-lx:~/.cpan/build/DBD-mysql-3.0002 # make
cp lib/DBD/mysql.pm blib/lib/DBD/mysql.pm
cp lib/DBD/mysql/GetInfo.pm blib/lib/DBD/mysql/GetInfo.pm
cp lib/Mysql.pm blib/lib/Mysql.pm
cp lib/DBD/mysql/INSTALL.pod blib/lib/DBD/mysql/INSTALL.pod
cp lib/Mysql/Statement.pm blib/lib/Mysql/Statement.pm
cp lib/Bundle/DBD/mysql.pm blib/lib/Bundle/DBD/mysql.pm
cc -c  -I/usr/lib/perl5/site_perl/5.8.7/i586-linux-thread-multi/auto/DBI/
-I/usr/include/mysql -I/usr/local/include -L/usr/local/lib -mcpu=i486 -fno-strength-reduce
-DDBD_MYSQL_INSERT_ID_IS_GOOD -g  -D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS
-DDEBUGGING -fno-strict-aliasing -pipe -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2
-march=i586 -mtune=i686 -fmessage-length=0 -Wall -D_FORTIFY_SOURCE=2 -g -Wall -pipe  
-DVERSION=\"3.0002\" -DXS_VERSION=\"3.0002\" -fPIC
"-I/usr/lib/perl5/5.8.7/i586-linux-thread-multi/CORE"   dbdimp.c
dbdimp.c: In function 'mysql_st_internal_execute41':
dbdimp.c:2461: warning: 'rows' may be used uninitialized in this function
/usr/bin/perl -p -e "s/~DRIVER~/mysql/g"
/usr/lib/perl5/site_perl/5.8.7/i586-linux-thread-multi/auto/DBI//Driver.xst > mysql.xsi
/usr/bin/perl /usr/lib/perl5/5.8.7/ExtUtils/xsubpp  -typemap
/usr/lib/perl5/5.8.7/ExtUtils/typemap  mysql.xs > mysql.xsc && mv mysql.xsc
mysql.c
Warning: duplicate function definition 'do' detected in mysql.xs, line 224
Warning: duplicate function definition 'rows' detected in mysql.xs, line 559
cc -c  -I/usr/lib/perl5/site_perl/5.8.7/i586-linux-thread-multi/auto/DBI/
-I/usr/include/mysql -I/usr/local/include -L/usr/local/lib -mcpu=i486 -fno-strength-reduce
-DDBD_MYSQL_INSERT_ID_IS_GOOD -g  -D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS
-DDEBUGGING -fno-strict-aliasing -pipe -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2
-march=i586 -mtune=i686 -fmessage-length=0 -Wall -D_FORTIFY_SOURCE=2 -g -Wall -pipe  
-DVERSION=\"3.0002\" -DXS_VERSION=\"3.0002\" -fPIC
"-I/usr/lib/perl5/5.8.7/i586-linux-thread-multi/CORE"   mysql.c
mysql.xs: In function 'XS_DBD__mysql__GetInfo_dbd_mysql_get_info':
mysql.xs:631: warning: implicit declaration of function 'is_prefix'
Running Mkbootstrap for DBD::mysql ()
chmod 644 mysql.bs
rm -f blib/arch/auto/DBD/mysql/mysql.so
LD_RUN_PATH="/lib" /usr/bin/perl myld cc  -shared dbdimp.o mysql.o  -o
blib/arch/auto/DBD/mysql/mysql.so        \
   -L/usr/lib/mysql -lmysqlclient -lz -lcrypt -lnsl -lm -lc -lnss_files -lnss_dns -lresolv
-lc -lnss_files -lnss_dns -lresolv   \
  
chmod 755 blib/arch/auto/DBD/mysql/mysql.so
cp mysql.bs blib/arch/auto/DBD/mysql/mysql.bs
chmod 644 blib/arch/auto/DBD/mysql/mysql.bs
Manifying blib/man3/DBD::mysql.3pm
Manifying blib/man3/DBD::mysql::INSTALL.3pm
Manifying blib/man3/Mysql.3pm
Manifying blib/man3/Bundle::DBD::mysql.3pm



meyer-lx:~/.cpan/build/DBD-mysql-3.0002 # make test
PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0,
'blib/lib', 'blib/arch')" t/*.t
t/00base.............install_driver(mysql) failed: Can't load
'/root/.cpan/build/DBD-mysql-3.0002/blib/arch/auto/DBD/mysql/mysql.so' for module
DBD::mysql: /root/.cpan/build/DBD-mysql-3.0002/blib/arch/auto/DBD/mysql/mysql.so:
undefined symbol: __builtin_delete at
/usr/lib/perl5/5.8.7/i586-linux-thread-multi/DynaLoader.pm line 230.
 at (eval 3) line 3
Compilation failed in require at (eval 3) line 3.
Perhaps a required shared library or dll isn't installed where expected
 at t/00base.t line 38
t/00base.............dubious                                                 
        Test returned status 2 (wstat 512, 0x200)
DIED. FAILED tests 4-5
        Failed 2/5 tests, 60.00% okay
t/10dsnlist..........install_driver(mysql) failed: Can't load
'/root/.cpan/build/DBD-mysql-3.0002/blib/arch/auto/DBD/mysql/mysql.so' for module
DBD::mysql: /root/.cpan/build/DBD-mysql-3.0002/blib/arch/auto/DBD/mysql/mysql.so:
undefined symbol: __builtin_delete at
/usr/lib/perl5/5.8.7/i586-linux-thread-multi/DynaLoader.pm line 230.
 at (eval 3) line 3
Compilation failed in require at (eval 3) line 3.
Perhaps a required shared library or dll isn't installed where expected
 at t/10dsnlist.t line 45
t/10dsnlist..........dubious                                                 
        Test returned status 2 (wstat 512, 0x200)
DIED. FAILED tests 1-9
....
....
....
and more of this errors

The same exists with mysql-develop 5.0.20 (without the Letter 'a').

>Fix:

	Workaround:
	 Take the old Development Files from mysql 5.0.19.
	- make clean
	- perl Makefile.PL
	- make
	- make test
	- make install

	No errors.

	I have no idea how to Fix it.

>Submitter-Id:	<submitter ID>
>Originator:	Stefan Zingler
>Organization:
  
  Stefan Zingler
  Software Developer - Workflow
  
  mobilcom AG
  Hollerstrasse 126
  EMail: s.zingler(at)mobilcom.de
>
>MySQL support: none 
>Synopsis:	Compile Error with DBD::mysql
>Severity:	non-critical
>Priority:	low
>Category:	mysql
>Class:		sw-bug
>Release:	mysql-5.0.20a-standard (MySQL Community Edition - Standard (GPL))
>Server: /usr/bin/mysqladmin  Ver 8.41 Distrib 5.0.20a, for pc-linux-gnu on i686
Copyright (C) 2000 MySQL AB & MySQL Finland AB & TCX DataKonsult AB
This software comes with ABSOLUTELY NO WARRANTY. This is free software,
and you are welcome to modify and redistribute it under the GPL license

Server version		5.0.20a-standard
Protocol version	10
Connection		Localhost via UNIX socket
UNIX socket		/var/lib/mysql/mysql.sock
Uptime:			22 min 34 sec

Threads: 1  Questions: 1  Slow queries: 0  Opens: 0  Flush tables: 1  Open tables: 6 
Queries per second avg: 0.001
>C compiler:    2.95.3
>C++ compiler:  2.95.3
>Environment:
	
System: Linux meyer-lx 2.6.13-15.8-smp #1 SMP Tue Feb 7 11:07:24 UTC 2006 i686 i686 i386
GNU/Linux
Architecture: i686

Some paths:  /usr/bin/perl /usr/bin/make /usr/bin/gmake /usr/bin/gcc /usr/bin/cc
GCC: Using built-in specs.
Target: i586-suse-linux
Configured with: ../configure --enable-threads=posix --prefix=/usr
--with-local-prefix=/usr/local --infodir=/usr/share/info --mandir=/usr/share/man
--libdir=/usr/lib --libexecdir=/usr/lib --enable-languages=c,c++,objc,f95,java,ada
--disable-checking --with-gxx-include-dir=/usr/include/c++/4.0.2 --enable-java-awt=gtk
--disable-libjava-multilib --with-slibdir=/lib --with-system-zlib --enable-shared
--enable-__cxa_atexit --without-system-libunwind --host=i586-suse-linux
Thread model: posix
gcc version 4.0.2 20050901 (prerelease) (SUSE Linux)
Compilation info: CC='gcc'  CFLAGS='-I/usr/local/include -L/usr/local/lib -O2 -mcpu=i486
-fno-strength-reduce'  CXX='gcc'  CXXFLAGS='-I/usr/local/include -L/usr/local/lib -O2
-mcpu=i486 -fno-strength-reduce -felide-constructors'  LDFLAGS=''  ASFLAGS=''
LIBC: 
lrwxrwxrwx  1 root root 13 2005-11-07 11:06 /lib/libc.so.6 -> libc-2.3.5.so
-rwxr-xr-x  1 root root 1405291 2005-09-09 19:36 /lib/libc-2.3.5.so
-rw-r--r--  1 root root 2617702 2005-09-09 19:20 /usr/lib/libc.a
-rw-r--r--  1 root root 204 2005-09-09 19:20 /usr/lib/libc.so
Configure command: ./configure '--disable-shared' '--with-mysqld-ldflags=-all-static'
'--with-client-ldflags=-all-static' '--with-comment=MySQL Community Edition - Standard
(GPL)' '--with-server-suffix=-standard' '--with-archive-storage-engine' '--with-innodb'
'--with-big-tables' '--enable-assembler' '--enable-local-infile'
'--with-mysqld-user=mysql' '--with-unix-socket-path=/var/lib/mysql/mysql.sock'
'--prefix=/' '--with-extra-charsets=complex' '--with-yassl' '--exec-prefix=/usr'
'--libexecdir=/usr/sbin' '--libdir=/usr/lib' '--sysconfdir=/etc' '--datadir=/usr/share'
'--localstatedir=/var/lib/mysql' '--infodir=/usr/share/info' '--includedir=/usr/include'
'--mandir=/usr/share/man' '--enable-thread-safe-client' '--with-readline' 'CC=gcc'
'CFLAGS=-I/usr/local/include -L/usr/local/lib -O2 -mcpu=i486 -fno-strength-reduce'
'CXXFLAGS=-I/usr/local/include -L/usr/local/lib -O2 -mcpu=i486 -fno-strength-reduce
-felide-constructors' 'CXX=gcc'

Thread
Compiling DBD::mysql with MySQL 5.0.20as.zingler24 Apr