Downloading 'ftp://mirror.pacific.net.au/linux/Gentoo/distfiles/texlive-module-warning-2008.tar.lzma' [Errno 7] Argument list too long: /usr/bin/wget -t 5 -T 60 --passive-ftp -O /usr/portage/distfiles/texlive-module-warning-2008.tar.lzma ftp://mirror.pacific.net.au/linux/Gentoo/distfiles/texlive-module-warning-2008.tar.lzma Reproducible: Always When I manually use wget to download files to distfiles directory the download succeeds.
Please post your "emerge --info" and paste the exact output of the package when failing during emerge.
Reopen this bug when you provide the requested information.
emerge --info output; Portage 2.1.6.7 (default/linux/amd64/2008.0/desktop, gcc-4.1.2, glibc-2.8_p20080602-r1, 2.6.20-gentoo-r8 x86_64) ================================================================= System uname: Linux-2.6.20-gentoo-r8-x86_64-AMD_Athlon-tm-_64_Processor_3200+-with-glibc2.2.5 Timestamp of tree: Wed, 18 Mar 2009 06:15:01 +0000 app-shells/bash: 3.2_p39 dev-lang/python: 2.4.4-r13, 2.5.2-r7 dev-python/pycrypto: 2.0.1-r6 dev-util/cmake: 2.6.2-r1 sys-apps/baselayout: 1.12.11.1 sys-apps/sandbox: 1.2.18.1-r2 sys-devel/autoconf: 2.13, 2.63 sys-devel/automake: 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.2 sys-devel/binutils: 2.18-r3 sys-devel/gcc-config: 1.4.0-r4 sys-devel/libtool: 1.5.26 virtual/os-headers: 2.6.27-r2 ACCEPT_KEYWORDS="amd64" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/revdep-rebuild /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c /etc/udev/rules.d" CXXFLAGS="-O2 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="distlocks fixpackages parallel-fetch protect-owned sandbox sfperms strict unmerge-orphans userfetch" GENTOO_MIRRORS="ftp://mirror.pacific.net.au/linux/Gentoo" LDFLAGS="-Wl,-O1" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" SYNC="rsync://rsync.au.gentoo.org/gentoo-portage" USE="X acl acpi alsa amd64 berkdb bluetooth branding bzip2 cairo cdr cli cracklib crypt cups dbus dri dvd dvdr dvdread eds emboss encode esd evo fam firefox fortran gdbm gif gnome gpm gstreamer gtk hal iconv ipv6 isdnlog jpeg kde ldap libnotify mad midi mikmod mmx mp3 mpeg mudflap multilib ncurses nls nptl nptlonly nvidia ogg opengl openmp pam pcre pdf perl png ppds pppd python qt3 qt3support qt4 quicktime readline reflection sdl session spell spl sse sse2 ssl startup-notification svg sysfs tcpd tiff truetype unicode usb vorbis xml xorg xulrunner xv zlib" ALSA_CARDS="intel8x0" 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="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 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" ELIBC="glibc" INPUT_DEVICES="keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="nvidia" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, LINGUAS, MAKEOPTS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY ------------------------------------------------------------------------------- Output of; /var/tmp/portage/dev-texlive/texlive-latexextra-2008-r1/temp/build.log available from; http://users.snap.net.nz/~rossd/texlive-latexextra-2008_buildlog.txt Note that some source files have been downloded to the distfiles directory manually.
This bug has resolved itself. I am not aware of any changes made which would have affected the bug, but I am prepared to accept this as a win and move on. I have changed the bug status to WORKSFORME.
I have this issue. One thing to consider is that I build in an i686 chroot environment. But no other ebuild has any problem with that (I've been doing it for years...). Portage 2.1.6.11 (default/linux/x86/2008.0, gcc-4.1.2, glibc-2.8_p20080602-r1, 2.6.18-92.1.22.el5.centos.plus i686) ================================================================= System uname: Linux-2.6.18-92.1.22.el5.centos.plus-i686-Intel-R-_Xeon-R-_CPU_X5365_@_3.00GHz-with-glibc2.0 Timestamp of tree: Thu, 02 Apr 2009 19:45:02 +0000 distcc[1975] (dcc_get_top_dir) Warning: HOME is not set; can't find distcc directory [disabled] ccache version 2.4 [disabled] app-shells/bash: 3.2_p39 dev-java/java-config: 1.3.7-r1, 2.1.7 dev-lang/python: 2.4.4-r13, 2.5.2-r7 dev-python/pycrypto: 2.0.1-r8 dev-util/ccache: 2.4-r7 dev-util/cmake: 2.6.3 sys-apps/baselayout: 1.12.11.1 sys-apps/sandbox: 1.2.18.1-r2 sys-devel/autoconf: 2.13, 2.63 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.2 sys-devel/binutils: 2.18-r4, 2.19, 2.19.1-r1 sys-devel/gcc-config: 1.4.0-r4 sys-devel/libtool: 1.5.26 virtual/os-headers: 2.6.27-r2 ACCEPT_KEYWORDS="x86" CBUILD="i686-pc-linux-gnu" CFLAGS="-O2 -march=i686 -pipe -fomit-frame-pointer" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config /var/lib/hsqldb" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c /etc/udev/rules.d" CXXFLAGS="-O2 -march=i686 -pipe -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="distlocks fixpackages parallel-fetch protect-owned sandbox sfperms strict unmerge-orphans userfetch" GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo" LDFLAGS="-Wl,-O1" LINGUAS="en en_US us" MAKEOPTS="-j7" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/portage/local/layman/sunrise /usr/portage/local/layman/science /usr/local/portage" SYNC="rsync://rsync.us.gentoo.org/gentoo-portage" USE="3dfx 3dnow X Xaw3d a52 aac aalib acl acpi adabas adns aim alsa ao apache2 apm arts atm audiofile avahi bash-completion bcmath berkdb bidi bindist birdstep blas bluetooth boundschecking branding bzip2 cairo calendar canna caps cdb cddb cdinstall cdparanoia cdr cgi chasen cjk clamav cli cracklib crypt cscope css ctype cups curl curlwrappers cvs cxx db2 dbase dbm dbmaker dbus dbx dga directfb djvu doc dri dts dv dvb dvd dvdr dvdread eds emacs emboss empress empress-bcs encode enscript esd esoob evo examples exif expat fam fastcgi fbcon ffmpeg fftw filepro firebird firefox flac flatfile fltk fontconfig foomaticdb fortran freetds freewnn frontbase ftp gcj gd gd-external gdbm geoip ggi gif gimp ginac glut gmp gnome gnome-keyring gnuplot gnustep gnutls gphoto2 gpm gps graphviz gsl gstreamer gtk gtkhtml guile hal hddtemp hdf5 htmlhandbook hyperwave-api iconv icq idn ieee1394 imagemagick imap imlib informix inifile innodb interbase iodbc ipod ipv6 isdnlog jabber jack java java5 java6 javascript jbig jingle jpeg jpeg2k kde kdeenablefinal kolab ladcca ladspa lame lapack lash latex lcms ldap libcaca libedit libgda libnotify libsamplerate libwww lirc lm_sensors lua lzo m17n-lib mad maildir mailwrapper matroska matrox mbox mcal mcve memlimit mhash midi migemo mikmod milter mime mmap mmx mng mnogosearch modplug mono motif mozilla mp3 mpeg mpi mplayer msn msql mssql mudflap mule musepack musicbrainz mysql mysqli nas ncurses neXt netboot netcdf networkmanager nis nls nntp nptl nptlonly nsplugin ocaml ocamlopt oci8 oci8-instant-client odbc ofx ogg old-linux openal openexr opengl openmp oracle oracle7 osc oscar pam pcmcia pcntl pcre pda pdf perl pfpro php pic plotutils png portaudio posix postgres ppds pppd prelude profile pulseaudio python qdbm qmail-spp qt3 qt4 quicktime radius raw rdesktop readline recode reflection rss ruby samba sapdb sasl scanner sdl seamonkey session sharedext sharedmem shorten simplexml skey slang slp smartcard sndfile snmp soap sockets socks5 solid sox speex spell spl sqlite sqlite3 sse sse2 ssl startup-notification subversion svg svga sybase sybase-ct symlink sysfs syslog sysvipc szip taglib tcl tcpd test tetex theora threads tidy tiff timidity tk tokenizer truetype unicode usb v4l v4l2 vcd vhosts videos vim-syntax vnc voodoo3 vorbis wavpack wddx wifi win32codecs wmf wxwindows x264 x86 xattr xcomposite xemacs xface xine xinerama xinetd xml xmlrpc xorg xosd xpm xprint xscreensaver xsl xulrunner xv xvid yahoo yaz zeroconf zlib" ALSA_CARDS="hda-intel intel8x0 intel8x0m via82xx" 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="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" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en en_US us" USERLAND="GNU" VIDEO_CARDS="fbdev intel i810 radeon vesa ati mach64 atimisc" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
build.log: [Errno 7] Argument list too long: /bin/bash -c touch "/usr/portage/distfiles/.__portage_test_write__" 2>/dev/null ; rval=$? ; rm -f "/usr/portage/distfiles/.__portage_test_write__" ; exit $rval [Errno 7] Argument list too long: /bin/bash -c touch "/usr/portage/distfiles/.locks/.__portage_test_write__" 2>/dev/null ; rval=$? ; rm -f "/usr/portage/distfiles/.locks/.__portage_test_write__" ; exit $rval * texlive-module-achemso-2008.tar.lzma RMD160 SHA1 SHA256 size ;-) ... [ ok ] * texlive-module-hypdvips-2008.tar.lzma RMD160 SHA1 SHA256 size ;-) ... [ ok ] * texlive-module-papertex-2008.tar.lzma RMD160 SHA1 SHA256 size ;-) ... [ ok ] * texlive-module-doi-2008.tar.lzma RMD160 SHA1 SHA256 size ;-) ... [ ok ] * texlive-module-bizcard-2008.tar.lzma RMD160 SHA1 SHA256 size ;-) ... [ ok ] * texlive-module-sdrt-2008.tar.lzma RMD160 SHA1 SHA256 size ;-) ... [ ok ] * texlive-module-coordsys-2008.tar.lzma RMD160 SHA1 SHA256 size ;-) ... [ ok ] * texlive-module-tracking-2008.tar.lzma RMD160 SHA1 SHA256 size ;-) ... [ ok ] * texlive-module-captcont-2008.tar.lzma RMD160 SHA1 SHA256 size ;-) ... [ ok ] * texlive-module-warning-2008.tar.lzma RMD160 SHA1 SHA256 size ;-) ... [ ok ] >>> Downloading 'http://distfiles.gentoo.org/distfiles/texlive-module-boites-2008.tar.lzma' [Errno 7] Argument list too long: /usr/bin/wget -t 5 -T 60 --passive-ftp -O /usr/portage/distfiles/texlive-module-boites-2008.tar.lzma http://distfiles.gentoo.org/distfiles/texlive-module-boites-2008.tar.lzma >>> Downloading 'http://distro.ibiblio.org/pub/linux/distributions/gentoo/distfiles/texlive-module-boites-2008.tar.lzma' ...
I did another install of this ebuild on another computer and struck the problem again. After manually downloading a number of modules to the distfiles directory I found the following command cleared the error; emerge -f texlive-latexextra The -f option is the download only argument. After this command succeeded I ran the same command without the option and the emerge ran successfully. Can dallas.masters run this command and report whether this clears the bug
(In reply to comment #7) Yes. That worked. Seeing the number of downloads, it seems like somewhere this arg list is too long?
It seems that os.execve() is raising the '[Errno 7] Argument list too long' exception when portage tries to call the fetcher. For some reason it doesn't affect --fetchonly mode, apparently related to the fact that ebuild(1) is not used for fetching in --fetchonly mode.
Apparently this is something like bug #222091, in which and extremely long environment variable (SRC_URI in this case) triggers 'Argument list too long' errors. I'm not sure why this would affect some users and not others. I don't get that error here.
This page has some info about ARG_MAX with various kernels: http://www.in-ulm.de/~mascheck/various/argmax/ Since linux-2.6.23, ARG_MAX is practically unlimited on the kernel side: http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b6a2fea39318e43fee84fa7b0b90d68bed92d2ba I'm running linux-2.6.29 here with glibc-2.9_p20081201-r2 and `getconf ARG_MAX` reports 2097152 bytes. For compatibility with more kernels, I'll have to patch the fetch code so that it doesn't pass potentially large environment variables into execve() calls.
This is fixed in svn r13290.
This is fixed in 2.2_rc29.
This is fixed in 2.1.6.12.
(In reply to comment #14) > This is fixed in 2.1.6.12. > Strikes back on 2.1.7.4, even if fetching only: # emerge -f texlive-latexextra Calculating dependencies... done! >>> Fetching (1 of 1) dev-texlive/texlive-latexextra-2008-r1 [Errno 7] Argument list too long: /bin/bash -c touch "/usr/portage/distfiles/.__portage_test_write__" 2>/dev/null ; rval=$? ; rm -f "/usr/portage/distfiles/.__portage_test_write__" ; exit $rval Traceback (most recent call last): File "/usr/lib64/portage/pym/portage/process.py", line 249, in spawn env, gid, groups, uid, umask, pre_exec) File "/usr/lib64/portage/pym/portage/process.py", line 378, in _exec os.execve(binary, myargs, env) File "/usr/lib64/portage/pym/portage/__init__.py", line 194, in __call__ rval = self._func(*wrapped_args, **wrapped_kwargs) OSError: [Errno 7] Argument list too long [Errno 7] Argument list too long: /bin/bash -c touch "/usr/portage/distfiles/.locks/.__portage_test_write__" 2>/dev/null ; rval=$? ; rm -f "/usr/portage/distfiles/.locks/.__portage_test_write__" ; exit $rval Traceback (most recent call last): File "/usr/lib64/portage/pym/portage/process.py", line 249, in spawn env, gid, groups, uid, umask, pre_exec) File "/usr/lib64/portage/pym/portage/process.py", line 378, in _exec os.execve(binary, myargs, env) File "/usr/lib64/portage/pym/portage/__init__.py", line 194, in __call__ rval = self._func(*wrapped_args, **wrapped_kwargs) OSError: [Errno 7] Argument list too long * texlive-module-achemso-2008.tar.lzma RMD160 SHA1 SHA256 size ;-) ... [ ok ] * texlive-module-mcaption.source-2008.tar.lzma RMD160 SHA1 SHA256 size ;-) ... [ ok ] * texlive-module-newfile.source-2008.tar.lzma RMD160 SHA1 SHA256 size ;-) ... [ ok ] * texlive-module-coordsys-2008.tar.lzma RMD160 SHA1 SHA256 size ;-) ... [ ok ] * texlive-module-flippdf.source-2008.tar.lzma RMD160 SHA1 SHA256 size ;-) ... [ ok ] * texlive-module-lkproof.doc-2008.tar.lzma RMD160 SHA1 SHA256 size ;-) ... [ ok ] * texlive-module-hpsdiss-2008.tar.lzma RMD160 SHA1 SHA256 size ;-) ... [ ok ] * texlive-module-fancytooltips.doc-2008.tar.lzma RMD160 SHA1 SHA256 size ;-) ... [ ok ] * texlive-module-dvdcoll-2008.tar.lzma RMD160 SHA1 SHA256 size ;-) ... [ ok ] >>> Downloading 'http://ftp.heanet.ie/pub/gentoo/distfiles/texlive-module-yafoot.source-2008.tar.lzma' [Errno 7] Argument list too long: /usr/bin/wget -t 5 -T 60 --passive-ftp -O /usr/portage/distfiles/texlive-module-yafoot.source-2008.tar.lzma http://ftp.heanet.ie/pub/gentoo/distfiles/texlive-module-yafoot.source-2008.tar.lzma [ snip a hell load of lines ] # emerge --info Portage 2.1.7.4 (default/linux/amd64/10.0, gcc-4.3.4, glibc-2.9_p20081201-r2, 2.6.18-xen-r12 x86_64) ================================================================= System uname: Linux-2.6.18-xen-r12-x86_64-Intel-R-_Core-TM-2_Quad_CPU_Q9300_@_2.50GHz-with-gentoo-1.12.13 Timestamp of tree: Sun, 15 Nov 2009 01:45:01 +0000 app-shells/bash: 4.0_p28 dev-java/java-config: 2.1.9-r1 dev-lang/python: 2.6.2-r1 dev-util/cmake: 2.6.4-r3 sys-apps/baselayout: 1.12.13 sys-apps/sandbox: 1.6-r2 sys-devel/autoconf: 2.13, 2.63-r1 sys-devel/automake: 1.9.6-r2, 1.10.2 sys-devel/binutils: 2.18-r3 sys-devel/gcc-config: 1.4.1 sys-devel/libtool: 2.2.6a virtual/os-headers: 2.6.27-r2 ACCEPT_KEYWORDS="amd64" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=nocona -O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/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 /etc/udev/rules.d" CXXFLAGS="-march=nocona -O2 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="assume-digests distlocks fixpackages news parallel-fetch protect-owned sandbox sfperms strict unmerge-logs unmerge-orphans userfetch" GENTOO_MIRRORS="http://ftp.heanet.ie/pub/gentoo/ http://mirror.ovh.net/gentoo-distfiles/ http://mirror.cambrium.nl/pub/os/linux/gentoo/" LDFLAGS="-Wl,-O1" MAKEOPTS="-j5" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://192.168.3.3/gentoo-portage" USE="X a52 aac acl alsa amd64 apache2 berkdb bzip2 cairo cli cracklib crypt cups curl dga doc dri dv dvb dvd embedded encode examples faac faad fortran gd gdbm gif gtk httpd hvm iconv imlib jadetex jpeg latex live mikmod mmx mng modules mozdevelop mp2 mp3 mudflap multilib mysql mysqli ncurses network nls nptl nptlonly openmp pam pcre pdf perl plotutils png pppd python quicktime readline reflection sdl session source spl sse sse2 ssl stream svg sysfs tcpd threads truetype unicode usb vorbis x264 xorg xv zlib" ALSA_CARDS="hda-intel" 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="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 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" 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="nv" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS Workaround to fetch files: $ emerge -f texlive-latexextra | grep wget | grep $(grep GENTOO_MIRRORS /etc/make.conf | sed 's/.*"\(.*\)".*/\1/' | awk '{ print $1 }') > tofetch; source tofetch; rm tofetch But even when files are fetched, it fails to set up environment: * checking auxfile checksums ;-) ... [ ok ] * checking miscfile checksums ;-) ... [ ok ] /usr/lib64/portage/bin/ebuild.sh: line 1704: /usr/bin/touch: Argument list too long * ERROR: dev-texlive/texlive-latexextra-2008-r1 failed: * error processing environment * * Call stack: * ebuild.sh, line 1787: Called die * The specific snippet of code: * preprocess_ebuild_env || \ * die "error processing environment" However, I don't see how this touch call can lead to that error, as a simple argument is being provided. Please reopen bug
(In reply to comment #15) > 2.6.18-xen-r12 x86_64) We can't really eliminate the problem with older kernels like this. Typically it's caused by extremely long variables in the environment. To troubleshoot, you can check the output of `emerge --info --verbose` for conspicuously long environment variables.
(In reply to comment #16) > (In reply to comment #15) > > 2.6.18-xen-r12 x86_64) > > We can't really eliminate the problem with older kernels like this. Typically > it's caused by extremely long variables in the environment. To troubleshoot, > you can check the output of `emerge --info --verbose` for conspicuously long > environment variables. Old? In some sense, yes. But on the other hand, it's the "cutting hedge" for non hardmasked amd64 xen-sources! About env length, it doesn't lie in my config: # emerge --info --verbose | wc -L 1346 but most likely in the ebuild made environment: # wc -L /var/tmp/portage/dev-texlive/texlive-latexextra-2008-r1/temp/environment 84936 this is SRC_URI. The next longest line is 6674 bytes long, so probably not offending. Do you have any clue how to at least work around this bug? Also, your fixes seems to be in portage, is that so much coupled with kernel version?
(In reply to comment #17) > About env length, it doesn't lie in my config: > # emerge --info --verbose | wc -L > 1346 1346 is pretty long. May that's it. > but most likely in the ebuild made environment: > # wc -L > /var/tmp/portage/dev-texlive/texlive-latexextra-2008-r1/temp/environment > 84936 > this is SRC_URI. The next longest line is 6674 bytes long, so probably not > offending. This is not he same environment that's used for fetch, so it's irrelevant to the specific problem that you have reported. > Do you have any clue how to at least work around this bug? Again, it might be related to the variable that is 1346 characters. If that's not it, you can try adding a print statement on line 3524 of /usr/lib/portage/pym/portage/__init__.py in order to see exactly what environment variables are present. Something like this: print settings.items() > Also, your fixes seems to be in portage, is that so much coupled with kernel > version? The problem only occurs under Linux with older kernels. The way that it's "fixed" for older kernels in svn r13290 is to avoid placing SRC_URI in the environment. For example, if you 'print settings.items()' as suggested above, SRC_URI should not be listed in the items that are printed.
(In reply to comment #18) > (In reply to comment #17) > > # emerge --info --verbose | wc -L > > 1346 > 1346 is pretty long. May that's it. Only 19 bytes longer than USE. 1346 LS_COLORS=... 1327 USE=... 422 APACHE2_MODULES=... > Again, it might be related to the variable that is 1346 characters. > If that's not it, you can try adding a print statement on line 3524 of > /usr/lib/portage/pym/portage/__init__.py in order to see exactly what > environment variables are present. Something like this: > > print settings.items() Yep, I tried to do it, but it seems we have different versions (mine shows tag # $Id: __init__.py 14759 2009-10-31 19:44:18Z zmedico $). The closest I found is on line 3753, in the end of def environ(self), but I know barely nothing on Python nor on Portage internals (both are in my TODO :). I added print (mydict.items()) and print(settings.items()). About settings, it fails (undefined). After removing the print settings, I could run until the infamous "Argument list too long" ; and in the last mydict block (environment made quite a lot of times!), I could see two elements, "A" and "AA" which are equal to the overlong SRC_URI (at least seems to). > > Also, your fixes seems to be in portage, is that so much coupled with kernel > > version? > The problem only occurs under Linux with older kernels. The way that it's > "fixed" for older kernels in svn r13290 is to avoid placing SRC_URI in the > environment. For example, if you 'print settings.items()' as suggested above, > SRC_URI should not be listed in the items that are printed. I did the same, adding in the end of environ() 'mydict.pop("A", None)\nmydict.pop("AA", None)'. This seems to have fixed the build for this package! Even if I had to remove the pops to update another package which had to download patches. Strangely, on another box (same portage version, tree, profile, newer kernel 2.6.30-gentoo-r4), I could emerge texlive-latexextra without trouble, despite ARG_MAX is the same in both /usr/src/linux/include/linux/limits.h (131072). So now it's a "work for me", but shouldn't that be fixed in a way or another? Like avoiding overlong SRC_URI (other vars as well?), splitting it, or whatever. IMHO, xen-sources kernels should be supported, even if most recent version is quite old. Or in a very last resort, masking xen-sources, but I would definitely vote against that. Thanks a lot for the tip!
(In reply to comment #19) > I did the same, adding in the end of environ() 'mydict.pop("A", > None)\nmydict.pop("AA", None)'. > This seems to have fixed the build for this package! Even if I had to remove > the pops to update another package which had to download patches. That's not a workable fix because A is usually required. However, the longer AA is no longer supported in EAPI 3, so eventually it will become irrelevant. > Strangely, on another box (same portage version, tree, profile, newer kernel > 2.6.30-gentoo-r4), I could emerge texlive-latexextra without trouble, despite > ARG_MAX is the same in both /usr/src/linux/include/linux/limits.h (131072). For newer kernels, the ARG_MAX value listed there is irrelevant. You can also use `getconf ARG_MAX` but I'm not sure how relevant that is (it's supposed to be practically unlimited on the kernel side iirc, but not really sure about the glibc side). > So now it's a "work for me", but shouldn't that be fixed in a way or another? > Like avoiding overlong SRC_URI (other vars as well?), splitting it, or > whatever. IMHO, xen-sources kernels should be supported, even if most recent > version is quite old. Or in a very last resort, masking xen-sources, but I > would definitely vote against that. Considering that all is well in newer kernels, I'd vote for masking older kernels.