Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 446438

Summary: sys-apps/coreutils-8.20 - Build fails with parallel make. - help2man: can't get '--help' info from man/uname.td/uname (or man/arch.td/arch)
Product: Gentoo Linux Reporter: Mario Kicherer <dev>
Component: [OLD] Core systemAssignee: Gentoo's Team for Core System packages <base-system>
Status: RESOLVED FIXED    
Severity: normal CC: ahipp0, alex, bkohler, fellows, fturco, jason.mours, phajdan.jr, releng, rich0, seraph, vanbochove
Priority: Normal    
Version: unspecified   
Hardware: AMD64   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 443536    
Attachments: verbose build log
emerge --info '=sys-apps/coreutils-8.20'

Description Mario Kicherer 2012-12-08 06:54:37 UTC
coreutils-8.20 builds fine with MAKEOPTS="-j1" but fails with higher numbers with following error:

  CC     lib/vasprintf.o
  CC     lib/vfprintf.o
  CC     lib/vprintf.o
  GEN    man/uname.1
help2man: can't get '--help' info from man/uname.td/uname
make[2]: *** [man/uname.1] Error 127
make[2]: *** Waiting for unfinished jobs....


Portage 2.1.11.31 (default/linux/amd64/10.0, gcc-4.5.4, glibc-2.15-r3, 3.5.7-gentoo x86_64)
=================================================================
System uname: Linux-3.5.7-gentoo-x86_64-Intel-R-_Core-TM-_i7-3610QM_CPU_@_2.30GHz-with-gentoo-2.1
Timestamp of tree: Sat, 08 Dec 2012 00:45:01 +0000
ld GNU ld (GNU Binutils) 2.22
app-shells/bash:          4.2_p37
dev-java/java-config:     2.1.11-r3
dev-lang/python:          2.7.3-r2, 3.2.3
dev-util/cmake:           2.8.9
dev-util/pkgconfig:       0.27.1
sys-apps/baselayout:      2.1-r1
sys-apps/openrc:          0.11.5
sys-apps/sandbox:         2.5
sys-devel/autoconf:       2.13, 2.68
sys-devel/automake:       1.9.6-r3, 1.11.6
sys-devel/binutils:       2.22-r1
sys-devel/gcc:            4.4.7, 4.5.4, 4.6.3
sys-devel/gcc-config:     1.7.3
sys-devel/libtool:        2.4-r1
sys-devel/make:           3.82-r3
sys-kernel/linux-headers: 3.6 (virtual/os-headers)
sys-libs/glibc:           2.15-r3
Repositories: gentoo steam-overlay anyc-overlay x-portage
ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe -march=native"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt /usr/share/openvpn/easy-rsa /usr/share/themes/oxygen-gtk/gtk-2.0"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /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="-O2 -pipe -march=native"
DISTDIR="/usr/portage/distfiles"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync webrsync-gpg"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="en_US.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j5"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/var/lib/layman/steam-overlay-meta /var/lib/layman/anyc-overlay /usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X a52 aac acl acpi alsa amd64 apng aspell attica avahi berkdb bluetooth bluray bs2b bzip2 cairo cli colord consolekit cracklib crypt cuda cups cxx dbus device-mapper dri dts dvb dvd eap-tls ebook egl encode exif fam ffmpeg flac fortran g3dvl gdbm gimp git gpg gphoto2 gpm gps gpu hunspell iconv imagemagick inotify ipv6 jpeg kde kipi latex lcms libass libnotify lm_sensors lzma lzo mad matroska mjpeg mmx mmxext modules mp3 mpeg mudflap multilib ncurses network network-cron networkmanager nls nptl ogg opencl openexr opengl openmp openssl pam pcre plasma png policykit ppds pppd projectm pulseaudio pvr python qalculate qt qt3support qt4 quicktime raw rdesktop readline resolvconf rtsp samba sdl semantic-desktop session slp smp spell sqlite sse sse2 sse3 sse4 sse4_1 sse4a ssh ssl ssse3 svg tcpd theora threads thumbnail tiff tray truetype udev unicode upnp usb v4l vaapi vcd vdpau video vlc vnc vorbis vpx wps x264 xine xinerama xmp xvid xvmc zeroconf zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" 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" CAMERAS="ptp2 canon" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" DRACUT_MODULES="lvm nfs dmraid mdraid ssh-client" 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 ubx" GRUB_PLATFORMS="efi-64 pc" INPUT_DEVICES="evdev keyboard mouse synaptics wacom joystick" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="en de" PHP_TARGETS="php5-3" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_2" RUBY_TARGETS="ruby18 ruby19" USERLAND="GNU" VIDEO_CARDS="vesa nouveau intel nvidia" 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"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON


Reproducible: Always
Comment 1 Robert Cabrera 2012-12-08 07:47:09 UTC
I too can confirm this issue on my ~amd64 laptop.

Emerging coreutils-8.20 with my default MAKEOPTS="-3j" fails with the following:
 * Messages for package sys-apps/coreutils-8.20:

 * ERROR: sys-apps/coreutils-8.20 failed (compile phase):
 *   emake failed
 * 
 * Call stack:
 *          ebuild.sh, line   93:  Called src_compile
 *        environment, line 2412:  Called __eapi2_src_compile
 *   phase-helpers.sh, line  616:  Called die
 * The specific snippet of code:
 *              emake || die "emake failed"
 * 
 * If you need support, post the output of `emerge --info '=sys-apps/coreutils-8.20'`,
 * the complete build log and the output of `emerge -pqv '=sys-apps/coreutils-8.20'`.
 * The complete build log is located at '/var/tmp/portage/sys-apps/coreutils-8.20/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/sys-apps/coreutils-8.20/temp/environment'.
 * Working directory: '/var/tmp/portage/sys-apps/coreutils-8.20/work/coreutils-8.20'
 * S: '/var/tmp/portage/sys-apps/coreutils-8.20/work/coreutils-8.20'
 * 
 * The following package has failed to build or install:
 * 
 *  (sys-apps/coreutils-8.20::gentoo, ebuild scheduled for merge)
---------------------------------------------------------------------


However, when I emerge with MAKEOPTS="-j1" it builds and installs correctly.
Comment 2 Mikayel Grigoryan 2012-12-08 08:53:21 UTC
I also have the same issue:
Coreutils 8.20 fails with "[man/uname.1] Error 127".

Linux gent 3.5.7-gentoo #1 Mon Oct 22 11:33:30 MSK 2012 x86_64 Intel(R) Core(TM) i5 CPU M 540 @ 2.53GHz GenuineIntel GNU/Linux

Again, with MAKEOPTS="-j1" it compiles, well.
Comment 3 dtoch 2012-12-08 09:21:48 UTC
The same on x86:
Portage 2.1.11.31 (default/linux/x86/10.0, gcc-4.5.4, glibc-2.15-r3, 3.5.7-gentoo i686)
=================================================================
System uname: Linux-3.5.7-gentoo-i686-Intel-R-_Core-TM-_i3-3220_CPU_@_3.30GHz-with-gentoo-2.1
Timestamp of tree: Sat, 08 Dec 2012 09:00:01 +0000
ld GNU ld (GNU Binutils) 2.22
app-shells/bash:          4.2_p37
dev-java/java-config:     2.1.11-r3
dev-lang/python:          2.7.3-r2, 3.2.3
dev-util/cmake:           2.8.9
dev-util/pkgconfig:       0.27.1
sys-apps/baselayout:      2.1-r1
sys-apps/openrc:          0.11.5
sys-apps/sandbox:         2.5
sys-devel/autoconf:       2.13, 2.68
sys-devel/automake:       1.9.6-r3, 1.11.6
sys-devel/binutils:       2.22-r1
sys-devel/gcc:            4.5.4
sys-devel/gcc-config:     1.7.3
sys-devel/libtool:        2.4-r1
sys-devel/make:           3.82-r3
sys-kernel/linux-headers: 3.6 (virtual/os-headers)
sys-libs/glibc:           2.15-r3
Repositories: gentoo
ACCEPT_KEYWORDS="x86"
ACCEPT_LICENSE="*"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=native -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-O2 -march=native -pipe"
DISTDIR="/usr/portage/distfiles"
FCFLAGS="-O2 -march=i686 -pipe"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
FFLAGS="-O2 -march=i686 -pipe"
GENTOO_MIRRORS="http://mirror.yandex.ru/gentoo-distfiles"
LANG="en_US.UTF-8"
LC_ALL="en_US.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j4"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY=""
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X aac acl acpi alsa apng berkdb bzip2 cli consolekit cpudetection cracklib crypt cxx dbus dri exif flac gdbm git gnutls gpm gudev iconv java jbig jpeg jpeg2k lame minizip mmx modules mp3 mudflap ncurses nls nptl nptlonly nsplugin ogg opengl openmp pam pcre plugins png pppd python qt4 raw readline rle session smpeg sqlite sse sse2 sse3 sse4_1 ssl ssse3 static-libs subversion svga threads thunar tiff unicode win32codecs x264 x86 xml zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" 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" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap 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 ubx" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" NETBEANS_MODULES="apisupport java profiler websvccommon cnd" PHP_TARGETS="php5-3" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_2" RUBY_TARGETS="ruby18 ruby19" USERLAND="GNU" VIDEO_CARDS="nvidia" 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"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
Comment 4 Marnix van Bochove 2012-12-08 11:01:21 UTC
Same problem on a amd64 architecture.
The workaround works:
I changed MAKEOPTS to -j1 in /etc/make.conf, updated coreutils to version 8.20 and changed MAKEOPTS back to -j5.
Comment 5 dolohow 2012-12-08 12:24:49 UTC
Related: http://forums.gentoo.org/viewtopic-p-7199740.html
Comment 6 Tom Wijsman (TomWij) (RETIRED) gentoo-dev 2012-12-08 13:09:26 UTC
Can someone attach a build log to show why exactly it fails? 

(In reply to comment #5)
> Related: http://forums.gentoo.org/viewtopic-p-7199740.html

Fetch failures are irrelevant to this bug, if you still experience that then please file another bug for that (if there doesn't exist one yet).
Comment 7 Andrey 2012-12-08 13:15:16 UTC
(In reply to comment #6)
> Can someone attach a build log to show why exactly it fails? 

Part of build output:
  CC     lib/printf-args.o
  CC     lib/printf-parse.o
  CC     lib/readutmp.o
  CC     lib/selinux-at.o
  CC     lib/sig2str.o
  CC     lib/utimensat.o
  CC     lib/vasnprintf.o
  CC     lib/vasprintf.o
  CC     lib/vfprintf.o
  CC     lib/vprintf.o
  GEN    man/uname.1
  GEN    man/arch.1
help2man: can't get '--help' info from man/arch.td/arch
make[2]: *** [man/arch.1] Error 127
make[2]: *** Waiting for unfinished jobs....
help2man: can't get '--help' info from man/uname.td/uname
make[2]: *** [man/uname.1] Error 127
make[2]: Leaving directory `/var/tmp/portage/sys-apps/coreutils-8.20/work/coreutils-8.20'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/sys-apps/coreutils-8.20/work/coreutils-8.20'
make: *** [all] Error 2
emake failed
 * ERROR: sys-apps/coreutils-8.20 failed (compile phase):
 *   emake failed
 *
 * Call stack:
 *          ebuild.sh, line   93:  Called src_compile
 *        environment, line 2372:  Called __eapi2_src_compile
 *   phase-helpers.sh, line  612:  Called die
 * The specific snippet of code:
 *              emake || die "emake failed"

Will try to get verbose build log.
Comment 8 Marko Weber Bürgermeister 2012-12-08 13:16:42 UTC
(In reply to comment #4)
> Same problem on a amd64 architecture.
> The workaround works:
> I changed MAKEOPTS to -j1 in /etc/make.conf, updated coreutils to version
> 8.20 and changed MAKEOPTS back to -j5.

Try this:  MAKEOPTS="-j1" emerge sys-apps/coreutils

then u dont need to touch your make.conf
Comment 9 Jorge Manuel B. S. Vicetto (RETIRED) Gentoo Infrastructure gentoo-dev 2012-12-08 13:25:06 UTC
This parallel issue broke my builds tonight.
Comment 10 Andrey 2012-12-08 13:34:11 UTC
Created attachment 331800 [details]
verbose build log
Comment 11 Andrey 2012-12-08 13:37:56 UTC
Created attachment 331802 [details]
emerge --info '=sys-apps/coreutils-8.20'
Comment 12 Andrey 2012-12-08 13:44:30 UTC
(In reply to comment #10)
> Created attachment 331800 [details]
> verbose build log

It failed to run `arch --help` and `uname --help` because they hadn't been built yet (there is only dcgen built in src subdir).
Comment 13 Richard Freeman gentoo-dev 2012-12-08 13:50:43 UTC
(In reply to comment #12)
> (In reply to comment #10)
> > Created attachment 331800 [details]
> > verbose build log
> 
> It failed to run `arch --help` and `uname --help` because they hadn't been
> built yet (there is only dcgen built in src subdir).

Well, if I had to guess that might have to do with this patch that was pushed straight to stable AFTER the arch testing was done:

avoid regenerating man pages all the time (since the locally compiled binaries
will always be newer than the bundled man pages)

--- a/Makefile.in
+++ b/Makefile.in
@@ -9967,7 +9967,6 @@
 # install a binary, require that all programs be built at distribution
 # time.  We can't use 'dist-hook' for this, since it would run too late:
 # the manpages must be generated before the distdir is created and filled.
-$(EXTRA_MANS): $(all_programs)
 
 # This is a kludge to remove generated 'man/*.1' from a non-srcdir build.
 # Without this, "make distcheck" might fail.
@@ -10084,9 +10084,6 @@
 man/whoami.1:    src/whoami.c
 man/yes.1:       src/yes.c
 
-man/arch.1:      src/arch
-man/uname.1:     src/uname
-
 .x.1:
 	$(AM_V_GEN)case '$(PERL)' in				\
 	  *"/missing "*)
Comment 14 Richard Freeman gentoo-dev 2012-12-08 14:02:49 UTC
(In reply to comment #13)
> Well, if I had to guess that might have to do with this patch that was
> pushed straight to stable AFTER the arch testing was done:

I ran a few tests - if I revert the patches back to 1.0 I can consistently get it to build with parallel make.  With patches 1.1 it fails fairly often.

I'd recommend fixing or reverting the patch.
Comment 15 Andrey 2012-12-08 14:05:42 UTC
(In reply to comment #13)
> (In reply to comment #12)
> > (In reply to comment #10)
> > > Created attachment 331800 [details]
> > > verbose build log
> > 
> > It failed to run `arch --help` and `uname --help` because they hadn't been
> > built yet (there is only dcgen built in src subdir).
> 
> Well, if I had to guess that might have to do with this patch that was
> pushed straight to stable AFTER the arch testing was done:
> 
> avoid regenerating man pages all the time (since the locally compiled
> binaries
> will always be newer than the bundled man pages)

I've just tried building with USE=vanilla and it works fine.
Also, it regenerates only 'man/arch.1'.
Comment 16 Ben Kohler gentoo-dev 2012-12-08 17:08:42 UTC
I know this wound doesn't really need more salt in it, but I agree that this patch should be reverted until it is otherwise fixed.  It's more important to successfully build for stable users with parallel make, than cross-compiling or x32 or other "exotic" setups.
Comment 17 SpanKY gentoo-dev 2012-12-08 19:41:04 UTC
should be all set now in the tree; thanks for the report!

Commit message: Disable man generation for native compiles too
http://sources.gentoo.org/sys-apps/coreutils/coreutils-8.20.ebuild?r1=1.7&r2=1.8
Comment 18 Tom Wijsman (TomWij) (RETIRED) gentoo-dev 2012-12-08 23:10:46 UTC
*** Bug 446512 has been marked as a duplicate of this bug. ***
Comment 19 Tom Wijsman (TomWij) (RETIRED) gentoo-dev 2012-12-09 07:55:34 UTC
*** Bug 446564 has been marked as a duplicate of this bug. ***