sys-apps/tcp-wrappers-7.6-r8 -ipv6 +static dev-db/mysql-4.0.20 +berkdb -debug -innodb +perl +readline -ssl +static +tcpd yields: /usr/include/tcpd.h: In function `void* handle_connections_sockets(void*)': /usr/include/tcpd.h:131: error: too many arguments to function `void sock_host()' mysqld.cc:2997: error: at this point in file /usr/include/tcpd.h:69: error: too many arguments to function `int hosts_access()' mysqld.cc:2998: error: at this point in file /usr/include/tcpd.h:124: error: too many arguments to function `char* eval_client()' mysqld.cc:3006: error: at this point in file make[4]: *** [mysqld.o] Error 1 make[4]: *** Waiting for unfinished jobs.... make[4]: Leaving directory `/var/tmp/portage/mysql-4.0.20/work/mysql-4.0.20/sql' Disabling tcpd enabled a successful compilation. More information here: http://bugs.mysql.com/bug.php?id=599 https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=76076
in cvs.
oops wrong bug
So, this bug still exists, and is *not* fixed in CVS, correct? I'm having this same problem. I'm hesitant to unUSE tcpd though, as I'm not sure what it provides and if I need it. The Red Hat bug report referenced above by jstubbs says that there's a newer tcp-wrappers rpm available that doesn't generate the problem, but Portage has the latest actually available tcp-wrappers (at the time I write this). It must be a Red Hat special... So, anyway. "Me, too."
Same problem here with mysql 4.0.22 and sys-apps/tcp-wrappers-7.6-r8
It compiled here just fine.. tcp-wrappers-7.6-r8 mysql Ver 12.22 Distrib 4.0.22, for pc-linux-gnu (i686) tux root # etcat uses mysql [ Colour Code : set unset ] [ Legend : (U) Col 1 - Current USE flags ] [ : (I) Col 2 - Installed With USE flags ] U I [ Found these USE variables in : dev-db/mysql-4.0.22 ] - - static : !!do not set this during bootstrap!! Causes things to be statically linked instead of dynamically + + readline : enables support for libreadline, a GNU line-editing library that most everyone wants. + + innodb : Adds innodb support for mySQL (transaction support) + + berkdb : Adds support for sys-libs/db (Berkeley DB for MySQL) + + tcpd : Adds support for TCP wrappers + + ssl : Adds support for Secure Socket Layer connections + + perl : Adds support/bindings for the Perl language. - - debug : Tells configure and the makefiles to build for debugging. Effects vary across packages, but generally it will at least add -g to CFLAGS. Remember to set FEATURES=nostrip too - - selinux : !!internal use only!! Security Enhanced Linux support, this must be set by the selinux profile or breakage will occur
Jeff, that's interesting. I wonder where the difference is. Could you please supply the output of "emerge info" as well?
The difference I see if that your running static.. Why are you building with static on? Portage 2.0.51-r3 (default-linux/x86/2004.2, gcc-3.3.4, glibc-2.3.4.20040808-r1, 2.4.26-gentoo-r9 i686) ================================================================= System uname: 2.4.26-gentoo-r9 i686 Intel(R) Pentium(R) 4 CPU 2.80GHz Gentoo Base System version 1.4.16 ccache version 2.3 [enabled] Autoconf: sys-devel/autoconf-2.59-r5 Automake: sys-devel/automake-1.8.5-r1 Binutils: sys-devel/binutils-2.15.90.0.1.1-r3 Headers: sys-kernel/linux-headers-2.4.21-r1 Libtools: sys-devel/libtool-1.5.2-r5 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-march=i686 -O2 -pipe" CHOST="i686-pc-linux-gnu" COMPILER="" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3/share/config /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-march=i686 -O2 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs autoconfig candy ccache distlocks sandbox sfperms" GENTOO_MIRRORS="ftp://ftp.ussg.iu.edu/pub/linux/gentoo ftp://mirrors.tds.net/gentoo http://mirrors.tds.net/gentoo http://mirror.datapipe.net/gentoo" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="X apm arts avi berkdb bitmap-fonts cdr crypt cups encode esd f77 fam flac font-server foomaticdb fortran gdbm gif gpm gtk gtk2 imagemagickimlib innodb java jpeg junit kde libg++ libwww mad mikmod mime motif mpeg mysql ncurses oggvorbis opengl oss pam pda pdflib perl png ppds python qt quicktime readline samba sdl slang spell ssl svga tcpd tiff truetype truetype-fonts type1-fonts x86 xml2 xmms xv zlib linguas_en"
Hm, that seems to be it. I used to have tcp-wrappers emerged with USE=static. This did NOT allow me to compile mysql with USE=tcpd. Now I did USE=-static emerge tcp-wrappers followed by USE=tcpd emerge mysql and I now have mysql installed with tcp-wrappers support. So, the solution is, for the moment, to *NOT* compile tcp-wrappers with static. "For the moment" means, until something like the proposal from Luca Barbato on the dev list with subject "Useflag static split" http://article.gmane.org/gmane.linux.gentoo.devel/23089 is considered.
the tcpwrappers guys have fixed this on their end.