Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 202748 - www-servers/apache-2.2.6-r6 fails to install as binary package
Summary: www-servers/apache-2.2.6-r6 fails to install as binary package
Status: RESOLVED FIXED
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Core (show other bugs)
Hardware: m68k Linux
: High normal (vote)
Assignee: Portage team
URL: http://kolla.no/apache-died.txt
Whiteboard:
Keywords: InVCS
Depends on:
Blocks: 200044
  Show dependency tree
 
Reported: 2007-12-19 04:02 UTC by Kolbjørn Barmen
Modified: 2007-12-21 03:14 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
save temp files when a binary install fails (save_temp.patch,911 bytes, patch)
2007-12-20 04:10 UTC, Zac Medico
Details | Diff
apache-2.2.6-r6 binary environment (environment,146.52 KB, text/plain)
2007-12-20 08:58 UTC, Tais P. Hansen
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Kolbjørn Barmen 2007-12-19 04:02:44 UTC
When trying to upgrade binary package from apache-2.2.6-r3 to apache-2.2.6-r6 I get a die message "more then one mpm was specified" (which I assume I'm supposed to read as "more than one mpm was specified"), but I do have only one specified. On the machine where the package was buildt, apache-2.2.6-r6 installed fine. The environment is the same on both.

Also, as one can see, emerge seem to clean up after the failed attempt to install the binary package, so the environment file that one is supposed to look at is not there. But I guess this is rather a portage bug.
Comment 1 Kolbjørn Barmen 2007-12-19 04:10:16 UTC
On the machine where installation of binary package is done:

chetter ~ # emerge --info
Portage 2.1.4_rc10 (default-linux/m68k, gcc-4.2.2, glibc-2.3.6-r5, 2.6.22-m68k-amiga m68k)
=================================================================
System uname: 2.6.22-m68k-amiga m68k 68060
Timestamp of tree: Sun, 16 Dec 2007 16:46:01 +0000
distcc 2.18.3 m68k-unknown-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
ccache version 2.4 [enabled]
app-shells/bash:     3.2_p17-r1
dev-lang/python:     2.5.1-r4
dev-python/pycrypto: 2.0.1-r6
dev-util/ccache:     2.4-r7
sys-apps/baselayout: 2.0.0_rc6
sys-apps/sandbox:    1.2.18.1-r2
sys-devel/autoconf:  2.13, 2.61-r1
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils:  2.18-r1
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   1.5.24
virtual/os-headers:  2.6.23-r2
ACCEPT_KEYWORDS="m68k x86 ~m68k ~ppc64 ~x86"
CBUILD="m68k-unknown-linux-gnu"
CFLAGS="-m68030 -pipe -Os"
CHOST="m68k-unknown-linux-gnu"
CONFIG_PROTECT="/etc"
CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf /etc/gentoo-release /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/terminfo /etc/udev/rules.d"
CXXFLAGS="-m68030 -pipe -Os"
DISTDIR="/usr/portage/distfiles"
FEATURES="buildpkg ccache distlocks metadata-transfer sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="ftp://ftp.uninett.no/linux/Gentoo http://gentoo.oregonstate.edu http://www.ibiblio.org/pub/Linux/distributions/gentoo"
LANG="en_US.utf8"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_EXTRA_OPTS="--exclude-from=/etc/portage/rsync_excludes"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/portage/local/kolla"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="apache2 berkdb bitmap-fonts bzip2 ccache cli cracklib curl dba dri expat fortran gd iconv idn imagemagick ipv6 isdnlog jpeg logrotate m68k mailwrapper memlimit midi ncurses nptl nptlonly objc objc++ openmp pam pcre png pppd readline reflection session spl ssl tcpd truetype truetype-fonts type1-fonts xml xorg zlib" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic auth_digest authn_anon authn_dbd authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock dbd deflate dir disk_cache env expires ext_filter file_cache filter headers ident imagemap include info log_config logio mem_cache mime mime_magic negotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_http rewrite setenvif so speling status unique_id userdir usertrack vhost_alias" APACHE2_MPMS="prefork" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="dummy fbdev v4l"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, LDFLAGS, LINGUAS, MAKEOPTS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS

chetter ~ #

And on building machine (actually the atari emulator aranym):

aranym ~ # emerge --info
Portage 2.1.4_rc10 (default-linux/m68k, gcc-4.2.2, glibc-2.3.6-r5, 2.6.22-m68k-atari m68k)
=================================================================
System uname: 2.6.22-m68k-atari m68k 68040
Timestamp of tree: Sun, 16 Dec 2007 16:46:01 +0000
distcc 2.18.3 m68k-unknown-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
ccache version 2.4 [enabled]
app-shells/bash:     3.2_p17-r1
dev-lang/python:     2.5.1-r4
dev-python/pycrypto: 2.0.1-r6
dev-util/ccache:     2.4-r7
sys-apps/baselayout: 2.0.0_rc6
sys-apps/sandbox:    1.2.18.1-r2
sys-devel/autoconf:  2.13, 2.61-r1
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.9.6-r2, 1.10
sys-devel/binutils:  2.18-r1
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   1.5.24
virtual/os-headers:  2.6.23-r2
ACCEPT_KEYWORDS="m68k x86 ~m68k ~ppc64 ~x86"
CBUILD="m68k-unknown-linux-gnu"
CFLAGS="-m68030 -pipe -Os"
CHOST="m68k-unknown-linux-gnu"
CONFIG_PROTECT="/etc"
CONFIG_PROTECT_MASK="/etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/terminfo /etc/udev/rules.d"
CXXFLAGS="-m68030 -pipe -Os"
DISTDIR="/usr/portage/distfiles"
FEATURES="buildpkg ccache distlocks metadata-transfer sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="ftp://ftp.uninett.no/linux/Gentoo http://gentoo.oregonstate.edu http://www.ibiblio.org/pub/Linux/distributions/gentoo"
LANG="en_US.utf8"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_EXTRA_OPTS="--exclude-from=/etc/portage/rsync_excludes"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/portage/local/kolla"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="apache2 berkdb bitmap-fonts bzip2 ccache cli cracklib curl dba dri expat fortran gd iconv idn imagemagick ipv6 isdnlog jpeg logrotate m68k mailwrapper memlimit midi ncurses nptl nptlonly objc objc++ openmp pam pcre png pppd readline reflection session spl ssl tcpd truetype truetype-fonts type1-fonts xml xorg zlib" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic auth_digest authn_anon authn_dbd authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock dbd deflate dir disk_cache env expires ext_filter file_cache filter headers ident imagemap include info log_config logio mem_cache mime mime_magic negotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_http rewrite setenvif so speling status unique_id userdir usertrack vhost_alias" APACHE2_MPMS="prefork" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="dummy fbdev v4l"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, LDFLAGS, LINGUAS, MAKEOPTS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS

aranym ~ # qlist -Iv apache-2
www-servers/apache-2.2.6-r6
aranym ~ #
Comment 2 Jakub Moc (RETIRED) gentoo-dev 2007-12-19 06:04:37 UTC
Reopen with the actual emerge output, thanks.
Comment 3 Kolbjørn Barmen 2007-12-19 15:41:44 UTC
chetter ~ # emerge -Kpv =www-servers/apache-2.2.6-r6

These are the packages that would be merged, in order:

Calculating dependencies... done!
[binary     U ] www-servers/apache-2.2.6-r6 [2.2.6-r3] USE="ssl -debug -doc (-ldap) (-selinux) -sni% -static% -suexec% -threads (-mpm-event%) (-mpm-itk%) (-mpm-peruser%) (-mpm-prefork%*) (-mpm-worker%) (-no-suexec%) (-static-modules%)" APACHE2_MODULES="actions%* alias%* auth_basic%* auth_digest%* authn_anon%* authn_dbd%* authn_dbm%* authn_default%* authn_file%* authz_dbm%* authz_default%* authz_groupfile%* authz_host%* authz_owner%* authz_user%* autoindex%* cache%* dav%* dav_fs%* dav_lock%* dbd%* deflate%* dir%* disk_cache%* env%* expires%* ext_filter%* file_cache%* filter%* headers%* ident%* imagemap%* include%* info%* log_config%* logio%* mem_cache%* mime%* mime_magic%* negotiation%* proxy%* proxy_ajp%* proxy_balancer%* proxy_connect%* proxy_http%* rewrite%* setenvif%* speling%* status%* unique_id%* userdir%* usertrack%* vhost_alias%* -asis% -authn_alias% -cern_meta% -charset_lite% -dumpio% -log_forensic% -proxy_ftp% -version%" APACHE2_MPMS="prefork%* -event% -itk% -peruser% -worker%"

Total: 1 package (1 upgrade), Size of downloads: 0 kB
chetter ~ # grep MPM /etc/make.conf
APACHE2_MPMS=prefork
chetter ~ # grep APACHE /etc/make.conf
APACHE2_MODULES="actions alias auth_basic auth_digest authn_anon authn_dbd authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock dbd deflate dir disk_cache env expires ext_filter file_cache filter headers ident imagemap include info log_config logio mem_cache mime mime_magic negotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_http rewrite setenvif so speling status unique_id userdir usertrack vhost_alias"
APACHE2_MPMS=prefork
chetter ~ # emerge -K =www-servers/apache-2.2.6-r6
Calculating dependencies... done!

>>> Emerging (1 of 1) www-servers/apache-2.2.6-r6 to /
>>> Extracting info
 * You have selected more then one mpm USE-flag.
 * Only one MPM is supported.
 *
 * ERROR: www-servers/apache-2.2.6-r6 failed.
 * Call stack:
 *               ebuild.sh, line   46:  Called pkg_setup
 *             environment, line 2905:  Called apache-2_pkg_setup
 *             environment, line  390:  Called setup_mpm
 *             environment, line 3188:  Called die
 * The specific snippet of code:
 *                   diefunc "$FUNCNAME" "$LINENO" "$?" "more then one mpm was specified";
 *  The die message:
 *   more then one mpm was specified
 *
 * If you need support, post the topmost build error, and the call stack if relevant.
 * A complete build log is located at '/var/log/portage/www-servers:apache-2.2.6-r6:20071219-034216.log'.
 * The ebuild environment file is located at '/var/tmp/portage/www-servers/apache-2.2.6-r6/temp/environment'.
 *
!!! Setup failed: 1

 * Messages for package www-servers/apache-2.2.6-r6:

 * You have selected more then one mpm USE-flag.
 * Only one MPM is supported.
 *
 * ERROR: www-servers/apache-2.2.6-r6 failed.
 * Call stack:
 *               ebuild.sh, line   46:  Called pkg_setup
 *             environment, line 2905:  Called apache-2_pkg_setup
 *             environment, line  390:  Called setup_mpm
 *             environment, line 3188:  Called die
 * The specific snippet of code:
 *                   diefunc "$FUNCNAME" "$LINENO" "$?" "more then one mpm was specified";
 *  The die message:
 *   more then one mpm was specified
 *
 * If you need support, post the topmost build error, and the call stack if relevant.
 * A complete build log is located at '/var/log/portage/www-servers:apache-2.2.6-r6:20071219-034216.log'.
 * The ebuild environment file is located at '/var/tmp/portage/www-servers/apache-2.2.6-r6/temp/environment'.
 *
chetter ~ # cat /var/tmp/portage/www-servers/apache-2.2.6-r6/temp/environment
cat: /var/tmp/portage/www-servers/apache-2.2.6-r6/temp/environment: No such file or directory
chetter ~ # ls -la /var/tmp/portage/
total 8
drwxrwxr-x  2 portage portage 4096 2007-12-19 04:43 .
drwxrwxrwt 16 root    root    4096 2007-12-18 01:21 ..
chetter ~ #
chetter ~ # cat /var/log/portage/www-servers\:apache-2.2.6-r6\:20071219-034216.log
 * You have selected more then one mpm USE-flag.
 * Only one MPM is supported.
 *
 * ERROR: www-servers/apache-2.2.6-r6 failed.
 * Call stack:
 *               ebuild.sh, line   46:  Called pkg_setup
 *             environment, line 2905:  Called apache-2_pkg_setup
 *             environment, line  390:  Called setup_mpm
 *             environment, line 3188:  Called die
 * The specific snippet of code:
 *                   diefunc "$FUNCNAME" "$LINENO" "$?" "more then one mpm was specified";
 *  The die message:
 *   more then one mpm was specified
 *
 * If you need support, post the topmost build error, and the call stack if relevant.
 * A complete build log is located at '/var/log/portage/www-servers:apache-2.2.6-r6:20071219-034216.log'.
 * The ebuild environment file is located at '/var/tmp/portage/www-servers/apache-2.2.6-r6/temp/environment'.
 *
chetter ~ #

Comment 4 Zac Medico gentoo-dev 2007-12-20 04:10:13 UTC
Created attachment 138950 [details, diff]
save temp files when a binary install fails

If you save this patch as /tmp/save_temp.patch, then you can apply it as follows:

patch /usr/lib/portage/pym/portage.py /tmp/save_temp.patch

It seems like something is wrong with the state of the USE variable in the binary package's environment.bz2 file. With the save_temp.patch applied, you'll be able to check the state of the USE variable inside /var/tmp/portage/www-servers/apache-2.2.6-r6/temp/environment.
Comment 5 Tais P. Hansen 2007-12-20 08:58:12 UTC
Created attachment 138953 [details]
apache-2.2.6-r6 binary environment

I'm experiencing the exact same problem. I've attached my package environment.
Comment 6 Tais P. Hansen 2007-12-20 09:18:25 UTC
Seems to me that MY_MPM is already defined when running setup_mpm()?
Comment 7 Zac Medico gentoo-dev 2007-12-20 15:55:47 UTC
(In reply to comment #6)
> Seems to me that MY_MPM is already defined when running setup_mpm()?

That's right. It's now fixed in cvs:

--- apache-2.eclass     15 Dec 2007 14:00:19 -0000      1.3
+++ apache-2.eclass     20 Dec 2007 15:43:27 -0000
@@ -92,6 +92,7 @@
 # This internal function makes sure that only one of APACHE2_MPMS was selected
 # or a default based on USE=threads is selected if APACHE2_MPMS is empty
 setup_mpm() {
+       MY_MPM=""
        for x in ${IUSE_MPMS} ; do
                if use apache2_mpms_${x} ; then
                        if [[ -z "${MY_MPM}" ]] ; then
Comment 8 Tais P. Hansen 2007-12-20 16:42:18 UTC
Applied the patch, rebuilt the package and installation now works. Thanks.
Comment 9 Zac Medico gentoo-dev 2007-12-21 03:13:10 UTC
Thanks for testing.