Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 111711 - DBD-mysql does not compile against mysql-4.1
Summary: DBD-mysql does not compile against mysql-4.1
Status: RESOLVED UPSTREAM
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Server (show other bugs)
Hardware: PPC Linux
: High major (vote)
Assignee: Gentoo Perl team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-11-06 11:05 UTC by Tobias McNulty
Modified: 2005-11-10 15:30 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Tobias McNulty 2005-11-06 11:05:42 UTC
It appears that DBD-mysql doesn't make proper usage of the mysql_shutdown function:

hermes tmp # revdep-rebuild --soname=libmysqlclient.so.12

Checking reverse dependencies...
Packages containing binaries and libraries using given shared object name,
will be recompiled.

Collecting system binaries and libraries... done.
  (/root/.revdep-rebuild.1_files)

Checking dynamic linking...
  found /usr/lib/perl5/vendor_perl/5.8.6/powerpc-linux/auto/DBD/mysql/mysql.so
  found /usr/local/nagios/libexec/check_mysql
 done.
  (/root/.revdep-rebuild_6e16de77.3_rebuild)

Assigning files to ebuilds... done.
  (/root/.revdep-rebuild_6e16de77.4_ebuilds)

Evaluating package order... done.
  (/root/.revdep-rebuild_6e16de77.5_order)

All prepared. Starting rebuild...
emerge --oneshot --nodeps  =dev-perl/DBD-mysql-2.9003
..........
Calculating dependencies ...done!
>>> emerge (1 of 1) dev-perl/DBD-mysql-2.9003 to /
* Adjusting permissions on ccache in /root/.ccache
* Adjusting permissions on ccache in /root/.ccache
>>> md5 files   ;-) DBD-mysql-3.0002_p3.ebuild
>>> md5 files   ;-) DBD-mysql-2.9007.ebuild
>>> md5 files   ;-) DBD-mysql-2.1027.ebuild
>>> md5 files   ;-) DBD-mysql-2.9003.ebuild
>>> md5 files   ;-) files/digest-DBD-mysql-3.0002_p3
>>> md5 files   ;-) files/digest-DBD-mysql-2.9007
>>> md5 files   ;-) files/digest-DBD-mysql-2.1027
>>> md5 files   ;-) files/digest-DBD-mysql-2.9003
>>> md5 files   ;-) files/makemaker.patch
>>> md5 src_uri ;-) DBD-mysql-2.9003.tar.gz
>>> Unpacking source...
>>> Unpacking DBD-mysql-2.9003.tar.gz to /var/tmp/portage/DBD-mysql-2.9003/work
>>> Source unpacked.
 * Using ExtUtils::MakeMaker
I will use the following settings for compiling and testing:

  cflags        (mysql_config) = -I/usr/include/mysql -mcpu=7400 -maltivec -mabi=altivec -pipe -
DHAVE_ERRNO_AS_DEFINE=1
  libs          (mysql_config) = -L/usr/lib/mysql -lmysqlclient -L/usr/lib -lz -lcrypt -lnsl -lm -L/usr/lib -
lssl -lcrypto
 nocatchstderr (default     ) = 0
  nofoundrows   (default     ) = 0
  ssl           (guessed     ) = 1
  testdb        (default     ) = test
  testhost      (default     ) =
  testpassword  (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.46 (for perl 5.008006 on powerpc-linux) installed in /usr/lib/perl5/vendor_perl/5.8.6/
powerpc-linux/auto/DBI/
Writing Makefile for DBD::mysql
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
powerpc-unknown-linux-gnu-gcc -c  -I/usr/lib/perl5/vendor_perl/5.8.6/powerpc-linux/auto/DBI/ -I/
usr/include/mysql -mcpu=7400 -maltivec -mabi=altivec -pipe -DHAVE_ERRNO_AS_DEFINE=1 -
DDBD_MYSQL_WITH_SSL -fno-strict-aliasing -pipe -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -
O1 -mcpu=7400 -maltivec -mabi=altivec -pipe   -DVERSION=\"2.9003\" -DXS_VERSION=\"2.9003\" -
fPIC "-I/usr/lib/perl5/5.8.6/powerpc-linux/CORE"   dbdimp.c
/usr/bin/perl5.8.6 -p -e "s/~DRIVER~/mysql/g" /usr/lib/perl5/vendor_perl/5.8.6/powerpc-linux/
auto/DBI//Driver.xst > mysql.xsi
/usr/bin/perl5.8.6 /usr/lib/perl5/5.8.6/ExtUtils/xsubpp  -typemap /usr/lib/perl5/5.8.6/ExtUtils/
typemap  mysql.xs > mysql.xsc && mv mysql.xsc mysql.c
Warning: duplicate function definition 'do' detected in mysql.xs, line 192
Warning: duplicate function definition 'rows' detected in mysql.xs, line 290
powerpc-unknown-linux-gnu-gcc -c  -I/usr/lib/perl5/vendor_perl/5.8.6/powerpc-linux/auto/DBI/ -I/
usr/include/mysql -mcpu=7400 -maltivec -mabi=altivec -pipe -DHAVE_ERRNO_AS_DEFINE=1 -
DDBD_MYSQL_WITH_SSL -fno-strict-aliasing -pipe -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -
O1 -mcpu=7400 -maltivec -mabi=altivec -pipe   -DVERSION=\"2.9003\" -DXS_VERSION=\"2.9003\" -
fPIC "-I/usr/lib/perl5/5.8.6/powerpc-linux/CORE"   mysql.c
mysql.xs: In function `XS_DBD__mysql__dr__admin_internal':
mysql.xs:100: error: too few arguments to function `mysql_shutdown'
make: *** [mysql.o] Error 1


Reproducible: Always
Steps to Reproduce:
1. upgrade to mysql 4.1 (http://www.gentoo.org/doc/en/mysql-upgrading.xml)
2. emerge --oneshot --nodeps  =dev-perl/DBD-mysql-2.9003
3.

Actual Results:  
See details above.

Expected Results:  
built and installed.

hermes tmp # emerge info
Portage 2.0.51.22-r3 (default-linux/ppc/2004.1, gcc-3.4.4, glibc-2.3.5-r2, 2.6.13.2 ppc)
===============================================================
==
System uname: 2.6.13.2 ppc 7400, altivec supported
Gentoo Base System version 1.6.13
ccache version 2.3 [enabled]
dev-lang/python:     2.3.5-r2, 2.4.2
sys-apps/sandbox:    1.2.12
sys-devel/autoconf:  2.13, 2.59-r6
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1
sys-devel/binutils:  2.16.1
sys-devel/libtool:   1.5.18-r1
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="ppc"
AUTOCLEAN="yes"
CBUILD="powerpc-unknown-linux-gnu"
CFLAGS="-O2 -mcpu=7400 -maltivec -mabi=altivec -pipe"
CHOST="powerpc-unknown-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/
qmail/control /var/www/localhost/htdocs/squirrelmail/config"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O2 -mcpu=7400 -maltivec -mabi=altivec -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig ccache distlocks sandbox sfperms strict"
GENTOO_MIRRORS="gentoo.oregonstate.edu"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="ppc alsa altivec apache2 berkdb bitmap-fonts crypt cups doc dvd emboss font-server fortran gd 
gdbm gif gpm imap ipv6 jpeg libwww mbox motif mp3 mpeg mysql ncurses nls oggvorbis opengl pam 
pdflib php pic png python readline ruby sasl sftplogging slang spell ssl tcpd threads tiff truetype 
truetype-fonts type1-fonts udev unicode xml xml2 xv zlib userland_GNU kernel_linux 
elibc_glibc"Unset:  ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS
Comment 1 Francesco R. (RETIRED) gentoo-dev 2005-11-10 13:27:55 UTC
it's a known issue, you need 
dev-perl/DBD-mysql-2.9007 
or better, I've not synced recently but it seam marked stable for "ppc" in the
ebuild I've lurked in.

May I suggest to try "DBD-mysql/DBD-mysql-3.0002_p3", since you tryed a mysql
still marked "~ppc" ?
Comment 2 Tobias McNulty 2005-11-10 15:30:12 UTC
It was a problem with DBD-mysql not being in world and mysql-4.1 not depending on the proper version 
of DBD-mysql.  So, emerge -upv world showed no new version of DBD-mysql nor did revdep-rebuild 
discover the new DBD-mysql.  Is there any way to specify an explicit version dependency in the mysql-4.1 
ebuild for at least DBD-mysql-2.9007?

Also, mysql-4.1.14 is in ppc, not ~ppc.