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
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" ?
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.