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

Bug 223699

Summary: sci-libs/blas-atlas-3.8.1 don't compile. Infinite loop during compile
Product: Gentoo Linux Reporter: Cănărău Constantin <canarauc>
Component: Current packagesAssignee: Gentoo Science Related Packages <sci>
Status: RESOLVED UPSTREAM    
Severity: normal    
Priority: High    
Version: unspecified   
Hardware: AMD64   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: build.log

Description Cănărău Constantin 2008-05-26 14:22:35 UTC
Similar with bug #151055, during compile blas-atlas-3.8.1 enter into infinite loop.

emerge --info:
Portage 2.1.4.4 (default-linux/amd64/2007.0, gcc-4.2.4, glibc-2.7-r2, 2.6.25-gentoo-r4-costel x86_64)
=================================================================
System uname: 2.6.25-gentoo-r4-costel x86_64 Intel(R) Core(TM)2 Duo CPU E8400 @ 3.00GHz
Timestamp of tree: Mon, 26 May 2008 13:33:01 +0000
ccache version 2.4 [disabled]
app-shells/bash:     3.2_p39
dev-java/java-config: 1.3.7, 2.1.6
dev-lang/python:     2.4.4-r13, 2.5.2-r4
dev-python/pycrypto: 2.0.1-r6
dev-util/ccache:     2.4-r7
sys-apps/baselayout: 2.0.0
sys-apps/openrc:     0.2.4-r1
sys-apps/sandbox:    1.2.18.1-r2
sys-devel/autoconf:  2.13, 2.62
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.1-r1
sys-devel/binutils:  2.18.50.0.7
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   1.5.26
virtual/os-headers:  2.6.25-r3
ACCEPT_KEYWORDS="amd64 x86 ~amd64 ~x86"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -march=native -mtune=native -fomit-frame-pointer -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/kde/4.0/env /usr/kde/4.0/share/config /usr/kde/4.0/shutdown /usr/share/config /var/bind /var/lib/hsqldb /var/qmail/alias /var/qmail/control /var/vpopmail/etc"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /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/texmf/web2c /etc/udev/rules.d"
CXXFLAGS="-O2 -march=native -mtune=native -fomit-frame-pointer -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs autoconfig candy distlocks fixpackages metadata-transfer parallel prelink sfperms strict unmerge-orphans userfetch userpriv"
GENTOO_MIRRORS="http://open-systems.ufl.edu/mirrors/gentoo http://gentoo.llarian.net/ http://distfiles.gentoo.org http://www.ibiblio.org/pub/Linux/distributions/gentoo http://distfiles.gentoo.org"
LANG="ro_RO.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--enable-new-dtags -Wl,--sort-common -s -Wl,-hash-style=gnu"
LINGUAS="ro en en_GB"
MAKEOPTS="-j4"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_EXTRA_OPTS="--progress"
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/gentoo /usr/portage/local/layman/desktop-effects"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="64bit 7zip X a52 aac aalib accessibility acl acpi ada administrator adns adplug aim aio alsa amd64 amr animgif ao aotuv apache apache2 apm ares arj arts asterisk audacious audiofile avahi avalon-framework avalon-logkit bash-completion battery bcmath bcp bdf berkdb bidi big-tables bindist bittorrent bjam bl blas bonjour bonobo boost boundschecking branding bzip2 cairo calendar caps captury cdaudio cdb cdda cddb cdinstall cdparanoia cdr cdrom chardet chm clamav clamd clearcase cli cmdsubmenu contentcache corba courier cpudetection cracklib crypt cscope ctype cups curl curlwrappers cursors cvs daap dbase dbm dbtool dbus dbx dc1394 dedicated deprecated device-mapper dga dhcp directfb disassembler discouraged djvu dmx dnd dri dts dv dvd dvdnav dvdr dvdread dxr3 dynamicplugin eds emacs embedded emboss emerald enca encode enscript eolconv epiphany esd evo examples exif expat extensions extra-algorithms extraengine extrafilters extras f-prot fam fame fastcgi fat fbcon ffmpeg fftw fidonet figlet filter firefox fits fixes flac flatfile flexresp2 fltk fontconfig foomaticdb fortran freetds freetts freetype freewnn ftp fullyoptimize fuse gajim gb gcj gd gdbm gdm geoip geos ggi gif gimp ginac gkrellm glade glep glib glitz glut gmp gnokii gnome gnome-keyring gnustep gnutls gphoto2 gpm gps graphviz gre groupwise gsl gsm gstreamer gtk gtk2 gtkhtml guile hal haskell hddtemp hesiod hfs high-ints hipe howl httpd hybrid hyperestraier hyperwave-api ibmacpi icons iconv icq icu idea idn ieee1394 iksemel imagemagick imap imlib inherit-graph inifile inline innodb inode inotify iodbc iproute2 ipv6 isdnlog ithreads jabber jack java javamail javascript jbig jce jfs jikes jingle john joystick jpeg jpeg2k jumpplay junit justify kde kdehiddenvisibility kdm kerberos kig-scripting kpoll krb4 ktts l7filter ladcca ladspa lapack lash latex latin1 lcms ldap leim lesstif lha libcaca libedit libg++ libgda libnotify libsamplerate libwww linux-smp-stats lirc live lm_sensors logrotate lua lzo m17n-lib mad maildir mailwrapper math matroska matrox max-idx-128 mbox mbrola mcal mcve md5sum mdnsresponder-compat meanwhile memcache memlimit metalink mhash midi migemo mikmod milter mime mjpeg mmap mmx mmxext mng mnogosearch mod modperl modplug mono motif mozilla mp2 mp3 mp4 mpeg mpi mplayer msn mssql mudflap mule multicall musepack musicbrainz mysql mysqli nas nat nautilus ncurses neXt nepomuk net netcdf nethack network networking networkmanager nids nls nntp nova npp nptl nptlonly nsplugin ntfs nvidia objc objc++ objc-gc ocaml odbc offensive office ofx ogg openal opendoc openexr opengl openmp optimisememory optimize osc oscar oss ovrimos pam pango pascal pcap pcntl pcre pda pdf perforce perfprofiling perl pertty pg-intdatetime php pic plasma plotutils plugins png pnm pop portaudio posix postfix postgres povray ppds pppd prediction prelude profile proj projectx pulseaudio pyste python qdbm qmail qos qq qt3 qt3support qt4 query-browser quicktime radio radius rar rdesktop react readline recode reflection regex reiser4 reiserfs restrict-javascript rle rrdcgi rrdtool rtc rtsp ruby runlevels samba sasl sbig scanner sdl sdl-image seamonkey sensord servletapi session sguil sharedext sharedmem shorten shout sid silc simplexml skey skins slang slp smarty smp sms sndfile snmp soap sockets socks5 source sourcecaps sourceview sox spamassassin speex spell spl sql sqlite sqlite3 srt sse sse-filters sse2 ssl ssse3 startup-notification stream subject-rewrite submenu subtitles subversion svg swat swig sylpheed symlink sysvipc szip tcl tcltk tcpd tcpwrapper tetex themes theora threads threadsafe thunderbird tidy tiff timestats timidity tivo tk tokenizer truetype tta tunepimp unicode usb utils v4l v4l2 v4l2win32codecs valgrind vcd vda verbose verse vhosts videos vim-syntax visualization vlm vnc vorbis vorbis-psy wav wavpack wddx webdav webinstall wifi winbind winpopup wireshark withsamplescripts wma wmf wxwindows x11vnc x264 xanim xattr xcb xcomposite xface xforms xfs xim xine xinerama xinetd xml xmlrpc xorg xosd xpm xprint xscreensaver xsl xtended xulrunner xv xvid xvmc xvnc yahoo yaz zephyr zip zlib zoran" ALSA_CARDS="hda-intel" 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="authn_alias cern_meta charset_lite dumpio log_forensic proxy_ftp version 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="worker" ELIBC="glibc" INITNG_PLUGINS="also bash_launcher chdir chroot conflict cpout critical ctrlaltdel daemon_clean debug_commands envparser find fmon fstat history idleprobe initctl interactive iparser last limit lockfile logfile netdev netprobe ngc4 ngcs nge pause provide reload renice rlparser simple_launcher stcmd stdout suid syncron syslog sysreq unneeded usplash" INPUT_DEVICES="keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="ro en en_GB" LIRC_DEVICES="hauppauge" USERLAND="GNU" VIDEO_CARDS="nv v4l vesa nvidia"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS
Comment 1 Cănărău Constantin 2008-05-26 14:25:50 UTC
Created attachment 154355 [details]
build.log

build log. Original size 4.2M. Too big as plain-text to atach.
Comment 2 Markus Dittrich (RETIRED) gentoo-dev 2008-05-27 10:22:57 UTC
Hi Canarau,

Thanks for your bug report.
How do you know that your install loops? This is not apparent
(to me) from the logs you posted. As far as I can tell
atlas detects your CPU as PIII64SSE3 (instead of Core2Duo64SSE3)
for which there are no arch defaults. This means that atlas will 
go through its full blown bootstrapping procedure which in turn takes a 
very long time (many hours probably even on your fast CPU).
There is nothing wrong with this and atlas' bootstrapping algorithm
should give you a well performing library (almost as good as with
arch defaults).

However, you should probably file a bug with upstream about this
failure to properly detect your CPU so they can fix it.
There is really nothing we can do about it.

Best,
Markus
Comment 3 Cănărău Constantin 2008-05-27 12:09:06 UTC
Usualy on my computer blas-atlas compile in ~30 minutes:

localhost tools # genlop -t blas-atlas
 * sci-libs/blas-atlas

     Sun May 11 02:13:48 2008 >>> sci-libs/blas-atlas-3.8.1
       merge time: 29 minutes and 39 seconds.

     Tue May 13 00:28:43 2008 >>> sci-libs/blas-atlas-3.8.1
       merge time: 29 minutes and 29 seconds.

This time it keep compiling for 2 hours until I press Ctrl+C
I think that it's a loop due to this portion in build log which is repeating:

dmm.c:53:5: error: #error "This kernel requires gas x86-32 assembler!"
make[6]: *** [dmmcase0] Error 1
make[6]: Leaving directory `/home/write/var/tmp/portage/sci-libs/blas-atlas-3.8.1/work/ATLAS/gentoo-build/tune/blas/gemm'
make[5]: *** [mmucase] Error 2

Maybe I am wrong, but this error seems to be similar with bug #151055, where is definitely a infinite loop.
I think that the error depends by other package, because the same version compiled just fine at the middle of the mounth.

Thank you!
Comment 4 Cănărău Constantin 2008-05-27 12:11:56 UTC
I think that it's important to mention: I upgraded my CPU from E6400 to an E8400.
On 11th and 13th May I used gcc-4.2.3 to compile blas-atlas.
Comment 5 Markus Dittrich (RETIRED) gentoo-dev 2008-05-28 13:20:01 UTC
(In reply to comment #4)
> I think that it's important to mention: I upgraded my CPU from E6400 to an
> E8400.
> On 11th and 13th May I used gcc-4.2.3 to compile blas-atlas.
> 

That's the "problem"! atlas does its own CPU detection and the switch
in CPU made your machine look like a completely different one to atlas. Apparently, atlas mis-detects the E8400 and goes through its full
bootstrap procedure. I don't have a good estimate on how long this will take
but it used to take ~3-4h on my dual-core opteron, so you can probably
expect something along these lines. Please file a bug with upstream
about this so they can have a look at it.

Thanks,
Markus   


Comment 6 Cănărău Constantin 2008-05-28 18:45:12 UTC
Ok. I will let blas-atlas to compile over the night.
If it won't finish in 12 hours I will fill a bug to upstream.

Thank you!
Comment 7 Markus Dittrich (RETIRED) gentoo-dev 2008-05-29 12:41:45 UTC
(In reply to comment #6)
> Ok. I will let blas-atlas to compile over the night.
> If it won't finish in 12 hours I will fill a bug to upstream.
> 
> Thank you!
> 

That sounds very reasonable ;)
Please keep us in the loop in case upstream suggests any fixes or if
it should turn out to be the ebuilds fault after all.

Thanks much,
Markus