When trying to emerge mod_php (4.3.3-r3), the compilation fails on $SRC/main/reentrancy.c: /var/tmp/portage/mod_php-4.3.3-r3/work/php-4.3.3/main/reentrancy.c: In function `php_readdir_r': /var/tmp/portage/mod_php-4.3.3-r3/work/php-4.3.3/main/reentrancy.c:192: too few arguments to function `readdir_r' /bin/sh /var/tmp/portage/mod_php-4.3.3-r3/work/php-4.3.3/libtool --silent --preserve-dup-deps --mode=compile gcc -Imain/ -I/var/tmp/portage/mod_php-4.3.3-r3/work/php-4.3.3/main/ -DPHP_ATOM_INC -I/var/tmp/portage/mod_php-4.3.3-r3/work/php-4.3.3/include -I/var/tmp/portage/mod_php-4.3.3-r3/work/php-4.3.3/main -I/var/tmp/portage/mod_php-4.3.3-r3/work/php-4.3.3 -I/var/tmp/portage/mod_php-4.3.3-r3/work/php-4.3.3/Zend -I/usr/include/libxml2 -I/usr/include/mysql -I/usr/include/pspell -I/var/tmp/portage/mod_php-4.3.3-r3/work/php-4.3.3/ext/xml/expat -I/var/tmp/portage/mod_php-4.3.3-r3/work/php-4.3.3/TSRM -march=athlon-xp -O 3 -fomit-frame-pointer -pipe -fforce-addr -falign-functions=4 -fprefetch-loop-arrays -prefer-pic -c /var/tmp/portage/mod_php-4.3.3-r3/work/php-4.3.3/main/php_variables.c -o main/php_variables.lo make: *** [main/reentrancy.lo] Error 1 make: *** Waiting for unfinished jobs.... !!! ERROR: dev-php/mod_php-4.3.3-r3 failed. !!! Function php_src_compile, Line 407, Exitcode 2 !!! compile problem Reproducible: Always Steps to Reproduce: 1. emerge -vU mod_php 2. see that the compile fails. revdep-rebuild report that my shared libraries are consistent. Gentoo Base System version 1.4.3.10p1 Portage 2.0.49-r15 (default-x86-1.4, gcc-3.2.3, glibc-2.3.2-r1, 2.4.22_pre2-gss) ================================================================= System uname: 2.4.22_pre2-gss i686 AMD Duron(tm) Processor ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-march=athlon-xp -O3 -fomit-frame-pointer -pipe -fforce-addr -falign-functions=4 -fprefetch-loop-arrays" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /var/qmail/control /usr/kde/2/share/config /usr/kde/3/share/config /var/bind /usr/X11R6/lib/X11/xkb /usr/kde/3.1/share/config /usr/share/config" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-O2 -mcpu=i686 -pipe" DISTDIR="/home/gentoo/distfiles" FEATURES="sandbox autoaddcvs buildpkg -ccache digest userpriv" GENTOO_MIRRORS="http://ftp.easynet.nl/mirror/gentoo/ ftp://ftp.snt.utwente.nl/pub/os/linux/gentoo http://gentoo.inode.at/ ftp://gentoo.inode.at/source/" MAKEOPTS="-j2" PKGDIR="/home/gentoo/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="x86 oss apm avi crypt cups encode foomaticdb gif gpm jpeg libg++ mad mikmod motif mpeg ncurses nls pdflib png quicktime spell truetype xml2 xmms xv zlib gdbm berkdb slang readline arts svga java postgres X sdl tcpd pam libwww ssl perl python esd imlib oggvorbis gnome gtk opengl mozilla cdr apache2 curl directfb gtk2 jikes mysql samba xml -kde -qt"
please include the entire error output (you've cut off the command that genereated the error for reentrancy.c)
Created attachment 20725 [details] Configuration log of failed compile
Created attachment 20726 [details] output of the failed compile run
I have just added the output from the configure run and a "script" snapshot of the full emerge. The error is, while compiling reentrancy.c, ".../main/reentrancy.c:192: too few arguments to function `readdir_r'" The full compilation command line is: /bin/sh /var/tmp/portage/mod_php-4.3.3-r3/work/php-4.3.3/libtool --silent --preserve-dup-deps --mode=compile gcc -Imain/ -I/var/tmp/portage/mod_php-4.3.3-r3/work/php-4.3.3/main/ -DPHP_ATOM_INC -I/var/tmp/portage/mod_php-4.3.3-r3/work/php-4.3.3/include -I/var/tmp/portage/mod_php-4.3.3-r3/work/php-4.3.3/main -I/var/tmp/portage/mod_php-4.3.3-r3/work/php-4.3.3 -I/var/tmp/portage/mod_php-4.3.3-r3/work/php-4.3.3/Zend -I/usr/include/libxml2 -I/usr/include/mysql -I/usr/include/pspell -I/var/tmp/portage/mod_php-4.3.3-r3/work/php-4.3.3/ext/xml/expat -I/var/tmp/portage/mod_php-4.3.3-r3/work/php-4.3.3/TSRM -march=athlon-xp -O3 -fomit-frame-pointer -pipe -fforce-addr -falign-functions=4 -fprefetch-loop-arrays -prefer-pic -c /var/tmp/portage/mod_php-4.3.3-r3/work/php-4.3.3/main/reentrancy.c -o main/reentrancy.lo /var/tmp/portage/mod_php-4.3.3-r3/work/php-4.3.3/main/reentrancy.c: In function `php_readdir_r': /var/tmp/portage/mod_php-4.3.3-r3/work/php-4.3.3/main/reentrancy.c:192: too few arguments to function `readdir_r' make: *** [main/reentrancy.lo] Error 1 make: *** Waiting for unfinished jobs.... !!! ERROR: dev-php/mod_php-4.3.3-r3 failed. !!! Function php_src_compile, Line 407, Exitcode 2 !!! compile problem
now that is really weird. the only reason those lines should compile, is if the configure tests detect an old style readdir_r (which only exists on Solaris!). 1. run revdep-rebuild and ensure all of your system is correct (esp. xmltok, mysql and openssl) 2. run the emerge again, and attach the config.log output of the failure again. Your system had this output: checking for readdir_r... yes checking for type of readdir_r... old-style instead of this output: checking for readdir_r... yes checking for type of readdir_r... POSIX
After rebuilding nearly my whole system (openssl-update will do that to your box), the mod_php emerge completed flawlessly. I can't provide any information which library triggered the wrong configure check, though, since my box was not in an usable state between begin and end of the openssl update though. Regards, Hakan