>>> md5 files ;-) files/digest-mod_perl-1.29 >>> md5 files ;-) files/mod_perl-1.99.17-Apache2.pm >>> md5 src_uri ;-) mod_perl-2.0.1.tar.gz >>> Unpacking source... >>> Unpacking mod_perl-2.0.1.tar.gz to /var/tmp/portage/mod_perl-2.0.1-r1/work * Applying mod_perl-2.0.1-sneak-tmpdir.patch ... [ ok ] >>> Source unpacked. Reading Makefile.PL args from @ARGV MP_TRACE = 1 MP_DEBUG = 1 MP_USE_DSO = 1 MP_APXS = /usr/sbin/apxs2 mod_perl/1.99_11 installation detected...ok (will install mod_perl/2.0.1 into PREFIX=/var/tmp/portage/mod_perl-2.0.1-r1/image/usr, no collision) Configuring Apache/2.0.54 mod_perl2/2.0.1 Perl/v5.8.7 [ error] Using Perl 5.8.7 w/o ithreads and 'worker' mpm httpd. [ error] Failed requirements: [ error] - Perl built with ithreads (build perl with -Dusethreads) !!! ERROR: www-apache/mod_perl-2.0.1-r1 failed. !!! Function src_compile, Line 79, Exitcode 1 Guys, what am I supposed to do now? The error message is not really clear to me. Inspecting make.conf I see I had ithreads missing but other threads flags turned on. Is that my problem? --No, I don't want to turn ithreads for perl as I don't want to play threads related bugs in perl modules. Portage 2.0.51.22-r2 (default-linux/x86/2005.0, gcc-3.4.4, glibc-2.3.5-r1, 2.6.11.7 i686) ================================================================= System uname: 2.6.11.7 i686 Intel(R) Pentium(R) 4 CPU 2.60GHz Gentoo Base System version 1.6.13 ccache version 2.4 [disabled] dev-lang/python: 2.3.5, 2.4.1-r1 sys-apps/sandbox: 1.2.11 sys-devel/autoconf: 2.13, 2.59-r7 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6 sys-devel/binutils: 2.16.1 sys-devel/libtool: 1.5.18-r1 virtual/os-headers: 2.4.19-r1, 2.6.11-r2 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-mmmx -msse -msse2 -O2 -fomit-frame-pointer -mtune=pentium4 -march=pentium4 -funroll-loops -pipe" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/lib/mozilla/defaults/pref /usr/share/config /var/bind /var/qmail/alias /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/texmf/web2c /etc/env.d" CXXFLAGS="-mmmx -msse -msse2 -O2 -fomit-frame-pointer -mtune=pentium4 -march=pentium4 -funroll-loops -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig distlocks sandbox sfperms strict" GENTOO_MIRRORS="ftp://ftp.muni.cz/pub/linux/gentoo http://gentoo.mirror.icd.hu/ http://ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/ http://gd.tuwien.ac.at/opsys/linux/gentoo/ ftp://ftp.tu-clausthal.de/pub/linux/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="x86 X Xaw3d acpi apache2 apm arts ati avi berkdb bidi bitmap-fonts bonobo ccache cdr crypt cscope cups curl dba dga directfb dvb dvd dvdr eds emacs emacs-w3 emboss encode esd ethereal f77 fam fbcom flac foomaticdb fortran freetype2 fvwm fvwm2 gb gd gdbm ggi gif gphoto2 gpm gstreamer gtk gtk2 gtkhtml icc imagemagick imlib innodb java jpeg lcms leim libg++ libwww mad mcal mesa mikmod mmx motif mozilla mp3 mpeg mule mysql ncurses nls nptl ogg oggvorbis opengl oss pam pda pdflib perl plotutils png ppds pthread pthreads python qt quicktime readline samba scanner sdl slang slp spell sse sse2 ssl tcltk tcpd tetex thread threads tiff truetype truetype-fonts type1-fonts unicode usb vorbis wmf xml xml2 xmms xosd xv zeo zlib video_cards_radeon userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS # perl -V Summary of my perl5 (revision 5 version 8 subversion 7) configuration: Platform: osname=linux, osvers=2.6.11.7, archname=i686-linux uname='linux ribosome 2.6.11.7 #1 mon apr 18 18:26:21 cest 2005 i686 intel(r) pentium(r) 4 cpu 2.60ghz genuineintel gnulinux ' config_args='-des -Darchname=i686-linux -Dcccdlflags=-fPIC -Dccdlflags=-rdynamic -Dcc=i686-pc-linux-gnu-gcc -Dprefix=/usr -Dvendorprefix=/usr -Dsiteprefix=/usr -Dlocincpth= -Doptimize=-mmmx -msse -msse2 -msse3 -O3 -fomit-frame-pointer -mtune=pentium4 -march=pentium4 -funroll-loops -pipe -Duselargefiles -Dd_semctl_semun -Dscriptdir=/usr/bin -Dman1dir=/usr/share/man/man1 -Dman3dir=/usr/share/man/man3 -Dinstallman1dir=/var/tmp/portage/perl-5.8.7/image//usr/share/man/man1 -Dinstallman3dir=/var/tmp/portage/perl-5.8.7/image//usr/share/man/man3 -Dman1ext=1 -Dman3ext=3pm -Dinc_version_list=5.8.0 5.8.0/i686-linux 5.8.2 5.8.2/i686-linux 5.8.4 5.8.4/i686-linux 5.8.5 5.8.5/i686-linux 5.8.6 5.8.6/i686-linux -Dcf_by=Gentoo -Ud_csh -Di_ndbm -Di_gdbm -Di_db' hint=recommended, useposix=true, d_sigaction=define usethreads=undef use5005threads=undef useithreads=undef usemultiplicity=undef useperlio=define d_sfio=undef uselargefiles=define usesocks=undef use64bitint=undef use64bitall=undef uselongdouble=undef usemymalloc=n, bincompat5005=undef Compiler: cc='i686-pc-linux-gnu-gcc', ccflags ='-fno-strict-aliasing -pipe -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64', optimize='-mmmx -msse -msse2 -msse3 -O3 -fomit-frame-pointer -mtune=pentium4 -march=pentium4 -funroll-loops -pipe', cppflags='-fno-strict-aliasing -pipe' ccversion='', gccversion='3.4.3-20050110 (Gentoo Linux 3.4.3.20050110, ssp-3.4.3.20050110-0, pie-8.7.7)', gccosandvers='' intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12 ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8 alignbytes=4, prototype=define Linker and Libraries: ld='i686-pc-linux-gnu-gcc', ldflags =' -L/usr/local/lib' libpth=/usr/local/lib /lib /usr/lib libs=-lpthread -lnsl -lndbm -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc libc=/lib/libc-2.3.4.so, so=so, useshrplib=false, libperl=libperl.a gnulibc_version='2.3.4' Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-rdynamic' cccdlflags='-fPIC', lddlflags='-shared -L/usr/local/lib' Characteristics of this binary (from libperl): Compile-time options: USE_LARGE_FILES Built under linux Compiled at Jul 2 2005 22:55:13 @INC: /etc/perl /usr/lib/perl5/site_perl/5.8.7/i686-linux /usr/lib/perl5/site_perl/5.8.7 /usr/lib/perl5/site_perl/5.8.2 /usr/lib/perl5/site_perl/5.8.2/i686-linux /usr/lib/perl5/site_perl/5.8.4 /usr/lib/perl5/site_perl/5.8.4/i686-linux /usr/lib/perl5/site_perl/5.8.5 /usr/lib/perl5/site_perl/5.8.5/i686-linux /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.7/i686-linux /usr/lib/perl5/vendor_perl/5.8.7 /usr/lib/perl5/vendor_perl/5.8.4 /usr/lib/perl5/vendor_perl/5.8.5 /usr/lib/perl5/vendor_perl/5.8.5/i686-linux /usr/lib/perl5/vendor_perl/5.8.6 /usr/lib/perl5/vendor_perl/5.8.6/i686-linux /usr/lib/perl5/vendor_perl /usr/lib/perl5/5.8.7/i686-linux /usr/lib/perl5/5.8.7 /usr/local/lib/site_perl /usr/lib/perl5/site_perl/5.8.2 /usr/lib/perl5/site_perl/5.8.2/i686-linux /usr/lib/perl5/site_perl/5.8.4 /usr/lib/perl5/site_perl/5.8.4/i686-linux /usr/lib/perl5/site_perl/5.8.5 /usr/lib/perl5/site_perl/5.8.5/i686-linux . I have 2.0.54-r13 installed and no dev-perl/Apache-Test as it blocked something in the "emerge -u world" path when I started the upgrade yesterday. Reproducible: Always Steps to Reproduce: 1. 2. 3.
> --No, I don't want to turn ithreads for perl as I don't want to play threads > related bugs in perl modules. Then recompile Apache with USE="mpm-prefork"... However, the mod_perl ebuild should probably check for this and give some more friendly advise.
I think this is a conflict between an mpm apache and a non-threaded perl - you should be doing one or the other, not mixing (ie, non-mpm apache and non-threaded perl, or mpm'd apache and threaded perl). I'm adding rendhalver to this so he can comment
the thing with apache-2 and mod_perl-2 is that if you have apache with threads you need a perl built with ithreads. confusing i know but it doesn't work otherwise. if you wish to keep a threaded apache you will need to rebuild perl with ithreads. and then you will also need to rebuild everything that depends on perl. running "perl-cleaner reallyall" will do this for you. that command will rebuild all the perl modules and everything that depends on perl. but if you don't want a threaded perl then you will need to rebuild apache without threads.
I had this same exact problem and I added the following to my package.use: net-www/apache mpm-prefork -mpm-worker and then did a rebuild (apache and mod_perl) and that seems to work. One odd thing is that I would have expected "mpm-preform" to have been the default already since PHP was installed (and if I'm not mistaken "mpm-preform" is highly recommended with using PHP with Apache2).
A note is being added (with a kill if all conditions are met) to the current mod_perl-2.0.1-r2 ebuild to block non-threaded perls and threaded apaches from building modperl2. Should at least cover warning folks about this bug.
afraid there isn't much more than the warning that we can do about this at this time