Trying to emerge Perl fails with the following error msg: Making DB_File (dynamic) Writing Makefile for DB_File make[1]: Entering directory `/var/space2/tmp/portage/perl-5.6.1-r11/work/perl-5.6.1/ext/DB_File' make[1]: Leaving directory `/var/space2/tmp/portage/perl-5.6.1-r11/work/perl-5.6.1/ext/DB_File' make[1]: Entering directory `/var/space2/tmp/portage/perl-5.6.1-r11/work/perl-5.6.1/ext/DB_File' cp DB_File.pm ../../lib/DB_File.pm AutoSplitting ../../lib/DB_File.pm (../../lib/auto/DB_File) gcc -c -fno-strict-aliasing -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -march=pentium -O3 -pipe -DVERSION=\"1.75\" -DXS_VERSION=\"1.75\" -fpic -I../.. version.c ../../miniperl -I../../lib -I../../lib ../../lib/ExtUtils/xsubpp -noprototypes -typemap ../../lib/ExtUtils/typemap -typemap typemap DB_File.xs > DB_File.xsc && mv DB_File.xsc DB_File.c gcc -c -fno-strict-aliasing -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -march=pentium -O3 -pipe -DVERSION=\"1.75\" -DXS_VERSION=\"1.75\" -fpic -I../.. DB_File.c DB_File.xs: In function `ParseOpenInfo': DB_File.xs:1339: warning: passing arg 2 of pointer to function from incompatible pointer type DB_File.xs:1339: incompatible type for argument 4 of indirect function call DB_File.xs:1339: too few arguments to function make[1]: *** [DB_File.o] Error 1 make[1]: Leaving directory `/var/space2/tmp/portage/perl-5.6.1-r11/work/perl-5.6.1/ext/DB_File' make: *** [lib/auto/DB_File/DB_File.so] Error 2 !!! ERROR: dev-lang/perl-5.6.1-r11 failed. !!! Function src_compile, Line 160, Exitcode 2 !!! (no error message) Reproducible: Always Steps to Reproduce: 1. 2. 3. Portage 2.0.47-r10 (default-1.0, gcc-2.95.3, glibc-2.2.5-r4,2.2.5-r7) ================================================================= System uname: 2.4.19-crypto-r7 i686 Pentium III (Coppermine) GENTOO_MIRRORS=" http://ftp.easynet.nl/mirror/gentoo// ftp://ftp.easynet.nl/mirror/gentoo// http://ftp.tu-clausthal.de/pub/linux/gentoo/" CONFIG_PROTECT="/etc /var/qmail/control /usr/kde/2/share/config /usr/kde/3/share/config /usr/X11R6/lib/X11/xkb /usr/kde/3.1/share/config /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/config" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" PORTDIR="/usr/portage" DISTDIR="/var/space2/portage/distfiles" PKGDIR="/var/space2/portage/packages" PORTAGE_TMPDIR="/var/space2/tmp" PORTDIR_OVERLAY="" USE="x86 oss 3dnow apm avi crypt cups encode jpeg kde libg++ mikmod mmx mpeg ncurses pdflib quicktime spell truetype xml2 xmms xv alsa arts berkdb bonobo esd gdbm gif gnome-libs gpm gtk gtkhtml guile imlib java ldap libwww motif nls oggvorbis opengl pam perl png python qt readline scanner sdl slang ssl svga tcltk tcpd tetex tiff X apache2 cdr dvd gtk2 imap innodb jikes mozilla mysql samba sasl" COMPILER="" CHOST="i686-pc-linux-gnu" CFLAGS="-march=pentium -O3 -pipe" CXXFLAGS="-march=pentium -O3 -pipe" ACCEPT_KEYWORDS="x86 ~x86" MAKEOPTS="-j2" AUTOCLEAN="yes" SYNC="rsync://rsync.gentoo.org/gentoo-portage" FEATURES="sandbox ccache"
Can you please add which versions of db you have installed? Specifically, do you perhaps have 4.x? Perhaps as a workaround, you can replace the DB module in the core with the equivalent one from CPAN, if you are in a hurry.
Got the same problems with perl-5.6.1-r12. Making DB_File (dynamic) Writing Makefile for DB_File make[1]: Entering directory `/var/tmp/portage/perl-5.6.1-r12/work/perl-5.6.1/ext/DB_File' make[1]: Leaving directory `/var/tmp/portage/perl-5.6.1-r12/work/perl-5.6.1/ext/DB_File' make[1]: Entering directory `/var/tmp/portage/perl-5.6.1-r12/work/perl-5.6.1/ext/DB_File' cp DB_File.pm ../../lib/DB_File.pm AutoSplitting ../../lib/DB_File.pm (../../lib/auto/DB_File) gcc -c -fno-strict-aliasing -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -march=i686 -O3 -pipe -DVERSION=\"1.75\" -DXS_VERSION=\"1.75\" -fpic "-I../.." version.c ../../miniperl "-I../../lib" "-I../../lib" ../../lib/ExtUtils/xsubpp -noprototypes -typemap ../../lib/ExtUtils/typemap -typemap typemap DB_File.xs > DB_File.xsc && mv DB_File.xsc DB_File.c gcc -c -fno-strict-aliasing -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -march=i686 -O3 -pipe -DVERSION=\"1.75\" -DXS_VERSION=\"1.75\" -fpic "-I../.." DB_File.c DB_File.xs: In function `ParseOpenInfo': DB_File.xs:1339: warning: passing arg 2 of pointer to function from incompatible pointer type DB_File.xs:1339: incompatible type for argument 4 of indirect function call DB_File.xs:1339: too few arguments to function make[1]: *** [DB_File.o] Error 1 make[1]: Leaving directory `/var/tmp/portage/perl-5.6.1-r12/work/perl-5.6.1/ext/DB_File' make: *** [lib/auto/DB_File/DB_File.so] Error 2 !!! ERROR: dev-lang/perl-5.6.1-r12 failed. !!! Function src_compile, Line 60, Exitcode 2 !!! (no error message) Portage 2.0.48-r1 (default-1.0, gcc-2.95.3, glibc-2.2.5-r2,2.2.5-r7) ================================================================= System uname: 2.4.20 i686 AuthenticAMD GENTOO_MIRRORS="http://gentoo.oregonstate.edu http://distro.ibiblio.org/pub/Linux/distributions/gentoo" CONFIG_PROTECT="/etc /var/qmail/control /usr/kde/2/share/config /usr/kde/3/share/config /usr/X11R6/lib/X11/xkb /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/config" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" PORTDIR="/usr/portage" DISTDIR="/usr/portage/distfiles" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR_OVERLAY="/usr/local/portage" USE="x86 3dnow apm libg++ mikmod pdflib alsa cdr gdbm gnome-libs libwww scanner slang tcltk -acl X -kde -gnome qt arts nls python perl oggvorbis opengl sdl -postgres jpeg png truetype xml xml2 dvd avi aalib mpeg encode fbcon mmx pda cups slp dga xv directfb qtmt gtk motif imlib ncurses readline svga lcms gif tiff gd quicktime -esd oss xmms flash -ipv6 snmp ggz pam ssl crypt imap ldap tcpd xface spell java mysql berkdb samba doc -gpm mozilla tetex" COMPILER="" CHOST="i686-pc-linux-gnu" CFLAGS="-march=i686 -O3 -pipe" CXXFLAGS="-march=i686 -O3 -pipe" ACCEPT_KEYWORDS="x86" MAKEOPTS="-j2" AUTOCLEAN="yes" SYNC="rsync://rsync.de.gentoo.org/gentoo-portage" FEATURES="sandbox ccache" My DBs: # qpkg -I -i sys-libs/db sys-libs/db-4.1.24 * Berkeley DB [ http://www.sleepycat.com ] sys-libs/db-1.85-r1 * db 1.85 -- required for RPM 4.0 to compile; that's about it. [ http://www.sleepycat.com ] sys-libs/db-3.2.9-r1 * Berkeley DB for transaction support in MySQL [ http://www.sleepycat.com/ ]
The version of DB_File in the perl core is not compatible with the development libdb 4.1 release that you are running. Can you try perl-5.8.0-r11? That version specifically brings in a newer version of DB_File to accommodate db 4.1 users.
perl 5.8.0 is now stable in 1.2 profile