>>> Emerging (2 of 2) www-apache/mod_perl-2.0.8::gentoo * mod_perl-2.0.8.tar.gz SHA256 SHA512 WHIRLPOOL size ;-) ... [ ok ] >>> Unpacking source... >>> Unpacking mod_perl-2.0.8.tar.gz to /dev/shm/portage/www-apache/mod_perl-2.0.8/work >>> Source unpacked in /dev/shm/portage/www-apache/mod_perl-2.0.8/work >>> Preparing source in /dev/shm/portage/www-apache/mod_perl-2.0.8/work/mod_perl-2.0.8 ... * Applying mod_perl-2.0.1-sneak-tmpdir.patch ... [ ok ] * Applying mod_perl-2.0.8-bundled-Apache-Test.patch ... [ ok ] >>> Source prepared. >>> Configuring source in /dev/shm/portage/www-apache/mod_perl-2.0.8/work/mod_perl-2.0.8 ... Reading Makefile.PL args from @ARGV MP_USE_DSO = 1 MP_APXS = /usr/sbin/apxs2 MP_TRACE = 0 MP_DEBUG = 0 no conflicting prior mod_perl version found - good. Configuring Apache/2.2.27 mod_perl/2.0.8 Perl/v5.18.2 [ error] Using Perl 5.018002 w/o ithreads and 'worker' mpm httpd. [ error] Failed requirements: [ error] - Perl built with ithreads (build perl with -Duseithreads) * ERROR: www-apache/mod_perl-2.0.8::gentoo failed (configure phase): * (no error message) Sat 13 Sep 10:43:50 CEST 2014 emerge --info dev-lang/perl www-servers/apache www-apache/mod_perl Portage 2.2.10 (default/linux/hppa/13.0, gcc-4.7.3, glibc-2.19-r1, 3.14.15-gentoo-JeR parisc64) ================================================================= System Settings ================================================================= System uname: Linux-3.14.15-gentoo-JeR-parisc64-PA8800_-Mako-with-gentoo-2.2 KiB Mem: 8231888 total, 6738216 free KiB Swap: 2101676 total, 2101676 free Timestamp of tree: Sat, 13 Sep 2014 03:15:01 +0000 ld GNU ld (GNU Binutils) 2.24 distcc 3.1 hppa2.0-unknown-linux-gnu [enabled] ccache version 3.1.9 [disabled] app-shells/bash: 4.2_p45 dev-lang/python: 2.7.7, 3.2.5-r6, 3.3.5-r1, 3.4.1 dev-util/ccache: 3.1.9-r3 dev-util/cmake: 2.8.12.2-r1 dev-util/pkgconfig: 0.28-r1 sys-apps/baselayout: 2.2 sys-apps/openrc: 0.12.4 sys-apps/sandbox: 2.6-r1 sys-devel/autoconf: 2.13, 2.69 sys-devel/automake: 1.9.6-r3, 1.11.6, 1.12.6, 1.13.4 sys-devel/binutils: 2.22-r1, 2.23.1, 2.23.2, 2.24-r3 sys-devel/gcc: 4.6.3, 4.6.4, 4.7.2-r1, 4.7.3-r1, 4.8.1-r1, 4.8.3 sys-devel/gcc-config: 1.7.3 sys-devel/libtool: 2.4.2-r1 sys-devel/make: 4.0-r1 sys-kernel/linux-headers: 3.16 (virtual/os-headers) sys-libs/glibc: 2.19-r1 Repositories: gentoo JeR ACCEPT_KEYWORDS="hppa" ACCEPT_LICENSE="*" CBUILD="hppa2.0-unknown-linux-gnu" CFLAGS="-mschedule=8000 -march=2.0 -ggdb -Wall -O2 -pipe -Wno-comment" CHOST="hppa2.0-unknown-linux-gnu" CONFIG_PROTECT="/etc /usr/lib/distcc/bin /usr/lib/python2.7/site-packages/buildbot/status/web /usr/share/easy-rsa /usr/share/gnupg/qualified.txt /var/bind /var/spool/torque /var/www/localhost/htdocs/wordpress/wp-config.php" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.3/ext-active/ /etc/php/apache2-php5.4/ext-active/ /etc/php/apache2-php5.5/ext-active/ /etc/php/cgi-php5.3/ext-active/ /etc/php/cgi-php5.4/ext-active/ /etc/php/cgi-php5.5/ext-active/ /etc/php/cli-php5.3/ext-active/ /etc/php/cli-php5.4/ext-active/ /etc/php/cli-php5.5/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c" CXXFLAGS="-mschedule=8000 -march=2.0 -ggdb -Wall -O2 -pipe" DISTDIR="/world/distfiles" EMERGE_DEFAULT_OPTS="--quiet-build=n" FCFLAGS="" FEATURES="assume-digests binpkg-logs buildpkg cgroup config-protect-if-modified distcc distlocks ebuild-locks fixlafiles merge-sync metadata-transfer news notitles parallel-fetch preserve-libs protect-owned sandbox sfperms splitdebug strict test test-fail-continue unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr" FFLAGS="-mschedule=8000 -march=2.0 -ggdb -Wall -O2 -pipe" GENTOO_MIRRORS="http://de-mirror.org/gentoo/ http://gentoo.mneisen.org/ http://mirror.netcologne.de/gentoo/ http://linux.rz.ruhr-uni-bochum.de/download/gentoo-mirror/ http://ftp.halifax.rwth-aachen.de/gentoo/ http://ftp.spline.inf.fu-berlin.de/mirrors/gentoo/ http://ftp.uni-erlangen.de/pub/mirrors/gentoo http://ftp-stud.hs-esslingen.de/pub/Mirrors/gentoo/ http://mirror.leaseweb.com/gentoo/ http://gentoo.tiscali.nl/ http://ftp.snt.utwente.nl/pub/os/linux/gentoo" LANG="C" LC_ALL="en_GB.UTF-8" LDFLAGS="-Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed" MAKEOPTS="-j6" PKGDIR="/keeps/gentoo/packages/karsten" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/dev/shm" PORTDIR="/world/gentoo/portage" PORTDIR_OVERLAY="/keeps/gentoo/local" SYNC="rsync://rsync.nl.gentoo.org/gentoo-portage" USE="256-color X acl alsa amr anacron apng audit bash-completion berkdb bfio bittorrent bzip2 cairo canberra cli consolekit coverage cracklib crossdev crypt cups custom-cflags cxx dane dbus declarative dirac directfb distinct-l dlz doc dot dri emacs exceptions exif expat fbcon filecaps firefox firmware foomaticdb fortran frontend-optional gbm gdbm geoip geoloc glep gles1 gles2 gost gpm graphite gsm gstreamer gtk gudev guile hddtemp hppa hwdb iconv idn imlib inotify ipv6 jadetex javascript jingle jit jpeg jpeg2k json kdrive kmod ladspa lasi launch-frontend libcaca libcanberra libevent libopts libsoxr libusb libwww lua lzma lzo mad mng mod modplug modules mp3 multislot multitarget munge nagios ncurses netlink nfs nls nptl objc objc++ objc-gc offensive openexr opengl openmp openrc openvg opus osmesa oss pam pcre php pic pkcs11 png pnm policykit python qt qt3support qt4 readline realtime regression-test rtmp samba schroedinger session smi socks5 speex spell spidermonkey sqlite ssl tcl tcpd test tga theora threads tiff tk tokyocabinet truetype unicode unwind v4l vim-syntax vorbis vpx wayland wcwidth x264 xa xattr xcb xft xhtml xkb xml2 xvfb xvid zlib" ALSA_CARDS="ad1889 usb-audio" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CURL_SSL="nss" DRACUT_MODULES="nfs syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="evdev joystick keyboard mouse acecad aiptek calcomp citron digitaledge dmc dynapro elo2300 elographics fpit hyperpen jamstudio magellan microtouch mutouch palmax penmount spaceorb summa tek4957 tslib ur98 void" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="en nl he" OFFICE_IMPLEMENTATION="libreoffice" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_3 python3_4" RUBY_TARGETS="ruby19 ruby20" USERLAND="GNU" VIDEO_CARDS="stifb dummy" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" USE_PYTHON="2.7 3.3" Unset: CPPFLAGS, CTARGET, INSTALL_MASK, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS ================================================================= Package Settings ================================================================= dev-lang/perl-5.18.2-r1 was built with the following: USE="berkdb doc gdbm -debug -ithreads" www-servers/apache-2.2.27-r4 was built with the following: USE="debug doc ssl threads -ldap (-selinux) -static -suexec" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias -asis -auth_digest -authn_dbd -cern_meta -charset_lite -dbd -dumpio -ident -imagemap -log_forensic -proxy -proxy_ajp -proxy_balancer -proxy_connect -proxy_ftp -proxy_http -proxy_scgi -reqtimeout -substitute -version" APACHE2_MPMS="-event -itk -peruser -prefork -worker" LDFLAGS="-Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -Wl,--no-as-needed" Makefile.PL seems to say that "certain mpms require perl 5.8.0+ w/ithreads".
(In reply to Jeroen Roovers from comment #0) > Makefile.PL seems to say that "certain mpms require perl 5.8.0+ w/ithreads". Lines 504-5 in <mod_perl-2.0.{7,8}/Makefile.PL>.
The list of thread-requiring mpm's is here: https://metacpan.org/source/Apache2::Build#L278 > APACHE2_MPMS="-event -itk -peruser -prefork -worker" Bingo =).
*** Bug 550070 has been marked as a duplicate of this bug. ***
It looks like you can get around the Makefile.PL requirement, and this ebuild patch certainly gets that part working ( not sure if the DEPEND stuff is right here ). I basically add an IUSE="ithreads" and use that to decide what to do. The downside is the resulting build fails with compile errors: --- modperl_env.c: In function ‘modperl_env_init’: modperl_env.c:657:10: error: ‘my_perl’ undeclared (first use in this function) if (!my_perl) modperl_env.c: In function ‘modperl_env_unload’: modperl_env.c:688:10: error: ‘my_perl’ undeclared (first use in this function) if (!my_perl) ^ Makefile:114: recipe for target 'modperl_env.lo' failed modperl_perl.c: In function ‘modperl_perl_destruct’: modperl_perl.c:184:5: error: too many arguments to function ‘modperl_env_unload’ modperl_env_unload(perl); ^ ^ Makefile:114: recipe for target 'modperl_perl.lo' failed make[1]: *** [modperl_perl.lo] Error 1 But attaching the ebuild patch for others to play with and see if anyone knows how to get around the compile error.
Created attachment 427824 [details, diff] nothreads-ebuild.patch
Created attachment 427826 [details] no-threads build.log For interested parties.
I hit this issue too. So I guess this is an upstream bug. Has it been reported upstream?
Our mod_perl packaging is *very* broken and shows problems that dont exist upstream. So this likely doesnt make sense. Now if I find an extra year of time somewhere... :/
Please test www-apache/mod_perl-2.0.10_rc1 and report back! That ebuild contains the precise requirements on threads as stated by upstream. As long as you use no threading MPM in apache, you should be able to work with a perl without interpreter threads.
Nice! Work for me. # emerge -pv www-servers/apache dev-lang/perl www-apache/mod_perl ... [ebuild R ] dev-lang/perl-5.20.2:0/5.20::gentoo USE="berkdb gdbm -debug -doc -ithreads" 13,410 KiB [ebuild R ] www-servers/apache-2.2.31:2::gentoo USE="ssl -debug -doc -ldap (-libressl) (-selinux) -static -suexec -threads" APACHE2_MODULES="alias auth_basic authn_default authz_default authz_host cache deflate dir env expires filter headers include info log_config logio mem_cache mime rewrite status vhost_alias -actions -asis -auth_digest -authn_alias -authn_anon -authn_dbd -authn_dbm -authn_file -authz_dbm -authz_groupfile -authz_owner -authz_user -autoindex -cern_meta -cgi -cgid -charset_lite -dav -dav_fs -dav_lock -dbd -disk_cache -dumpio -ext_filter -file_cache -ident -imagemap -log_forensic -mime_magic -negotiation -proxy -proxy_ajp -proxy_balancer -proxy_connect -proxy_ftp -proxy_http -proxy_scgi -reqtimeout -setenvif -speling -substitute -unique_id -userdir -usertrack -version" APACHE2_MPMS="prefork -event -itk -peruser -worker" 0 KiB [ebuild R ~] www-apache/mod_perl-2.0.10_rc1:1::gentoo USE="-debug {-test}" APACHE2_MPMS="prefork -event -worker" 0 KiB
But for apache-2.4 there is an issue. Configuring Apache/2.4.23 mod_perl/2.0.10-rc1 Perl/v5.20.2 [ error] Using Perl 5.020002 w/o ithreads and httpd-2.4. [ error] Failed requirements: [ error] - Perl built with ithreads (build perl with -Duseithreads)
(In reply to Sergiy Borodych from comment #11) > But for apache-2.4 there is an issue. > > Configuring Apache/2.4.23 mod_perl/2.0.10-rc1 Perl/v5.20.2 > [ error] Using Perl 5.020002 w/o ithreads and httpd-2.4. > [ error] Failed requirements: > [ error] - Perl built with ithreads (build perl with -Duseithreads) What's your useflags for Apache 2.4 ? (Especially also which MPMs?)
Currently I have downgraded to 2.2, but this is my output if unmask 2.4 [binary U ] app-admin/apache-tools-2.4.23::gentoo [2.2.31::gentoo] USE="ssl (-libressl)" 0 KiB [ebuild U ] www-servers/apache-2.4.23:2::gentoo [2.2.31:2::gentoo] USE="ssl -debug -doc -ldap (-libressl) (-selinux) -static -suexec -threads" APACHE2_MODULES="alias auth_basic authn_core%* authz_core%* authz_host cache deflate dir env expires filter headers include info log_config logio mime rewrite socache_shmcb%* status unixd%* vhost_alias -access_compat% -actions -asis -auth_digest -authn_alias -authn_anon -authn_dbd -authn_dbm -authn_file -authz_dbd% -authz_dbm -authz_groupfile -authz_owner -authz_user -autoindex -cache_disk% -cern_meta -cgi -cgid -charset_lite -dav -dav_fs -dav_lock -dbd -dumpio -ext_filter -file_cache -http2% -ident -imagemap -lbmethod_bybusyness% -lbmethod_byrequests% -lbmethod_bytraffic% -lbmethod_heartbeat% -log_forensic -macro% -mime_magic -negotiation -proxy -proxy_ajp -proxy_balancer -proxy_connect -proxy_fcgi% -proxy_ftp -proxy_html% -proxy_http -proxy_scgi -proxy_wstunnel% -ratelimit% -remoteip% -reqtimeout -setenvif -slotmem_shm% -speling -substitute -unique_id -userdir -usertrack -version (-authn_default%*) (-authz_default%*) (-disk_cache%) (-mem_cache%*)" APACHE2_MPMS="prefork -event -worker (-itk%) (-peruser%)" 0 KiB
Ok, I've updated perl to 5.22 (after resolving all my conflicts, yeah!) and trying again but still no luck with apache 2.4 :( Configuring Apache/2.4.23 mod_perl/2.0.10-rc1 Perl/v5.22.2 [ error] Using Perl 5.022002 w/o ithreads and httpd-2.4. [ error] Failed requirements: [ error] - Perl built with ithreads (build perl with -Duseithreads)
(In reply to Sergiy Borodych from comment #14) > Ok, I've updated perl to 5.22 (after resolving all my conflicts, yeah!) > and trying again but still no luck with apache 2.4 :( > > Configuring Apache/2.4.23 mod_perl/2.0.10-rc1 Perl/v5.22.2 > [ error] Using Perl 5.022002 w/o ithreads and httpd-2.4. > [ error] Failed requirements: > [ error] - Perl built with ithreads (build perl with -Duseithreads) OK I found the reason. Try -r1, it now only has one relevant useflag "ithreads", which needs the same setting as in dev-lang/perl ... Should work out of the box now.
Yes, it is. Thank you! [Tue Oct 25 16:42:46.808267 2016] [mpm_prefork:notice] [pid 22362] AH00163: Apache/2.4.23 (Unix) mod_perl/2.0.10-rc1 Perl/v5.22.2 configured -- resuming normal operations [Tue Oct 25 16:42:46.808307 2016] [core:notice] [pid 22362] AH00094: Command line: '/usr/sbin/apache2 -D DEFAULT_VHOST -D PERL -D STATUS -d /usr/lib64/apache2 -f /etc/apache2/httpd.conf'