Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 192613 - sci-mathematics/maxima-5.13.0 build is semi-interactive, causing needlessly long compile
Summary: sci-mathematics/maxima-5.13.0 build is semi-interactive, causing needlessly l...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: AMD64 Linux
: High normal (vote)
Assignee: Gentoo Science Mathematics related packages
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-09-15 18:05 UTC by Ricky Marshall
Modified: 2007-09-30 22:20 UTC (History)
1 user (show)

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ricky Marshall 2007-09-15 18:05:02 UTC
There seems to be a problem in this ebuild. The compilation process of maxima in gcl poses two questions with every module. Fortunately, it times out and eventually proceeds. Unfortunately, it takes several seconds for each of those timeouts to occur, which is much longer than the time spent actually compiling. As a result, this process has been running for several hours now. Below is an example of one of scores, if not hundreds, of these timeouts.The question marks show where the process waits for a response.

;      - Loading binary file "binary-gcl/scs.o" 
Loading binary-gcl/scs.o
start address -T 0x3ef0000 Finished loading binary-gcl/scs.o
;      - Binary file binary-gcl/asum.o is old or does not exist. 
;        Compile (and load) source file /var/tmp/portage/sci-mathematics/maxima-5.13.0/work/maxima-5.13.0/src/asum.lisp instead? y
;      - Should I bother you if this happens again? y
;      - Compiling source file
;        "/var/tmp/portage/sci-mathematics/maxima-5.13.0/work/maxima-5.13.0/src/asum.lisp"
Compiling /var/tmp/portage/sci-mathematics/maxima-5.13.0/work/maxima-5.13.0/src/asum.lisp.
End of Pass 1.  

# emerge --info
Portage 2.1.3.9 (default-linux/amd64/2006.0, gcc-4.1.2, glibc-2.5-r4, 2.6.22-gentoo-r6 x86_64)
=================================================================
System uname: 2.6.22-gentoo-r6 x86_64 AMD Athlon(tm) 64 X2 Processor 4200+
Timestamp of tree: Sat, 15 Sep 2007 12:29:01 +0000
app-shells/bash:     3.2_p17
dev-java/java-config: 1.3.7, 2.0.33-r1
dev-lang/python:     2.4.4-r4
dev-python/pycrypto: 2.0.1-r6
sys-apps/baselayout: 1.12.9-r2
sys-apps/sandbox:    1.2.18.1
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.17
sys-devel/gcc-config: 1.3.16
sys-devel/libtool:   1.5.24
virtual/os-headers:  2.6.21
ACCEPT_KEYWORDS="amd64"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=k8 -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/X11/xkb /usr/share/config"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c"
CXXFLAGS="-march=k8 -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks metadata-transfer sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="http://gentoo.osuosl.org/ ftp://ftp.ussg.iu.edu/pub/linux/gentoo http://open-systems.ufl.edu/mirrors/gentoo "
MAKEOPTS="-j4"
PKGDIR="/usr/portage/packages"
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"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X aac alsa amd64 berkdb bitmap-fonts cli cracklib crypt cups doc dri dvd eds emboss encode ffmpeg font-server foomaticdb fortran gif gpm gstreamer gtk gtk2 iconv imagemagick imlib ipv6 isdnlog jpeg lirc lzw lzw-tiff midi mp3 mpeg mudflap ncurses nls nptl nptlonly opengl openmp pam pcre perl png pppd python qt3 qt4 quicktime readline reflection sdl session spell spl ssl tcpd tiff truetype-fonts type1-fonts unicode usb v4l v4l2 xorg xpm xv 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 mulaw multi null plug rate route share shm softvol" ELIBC="glibc" INPUT_DEVICES="keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIRC_DEVICES="hauppauge" USERLAND="GNU" VIDEO_CARDS="nvidia fbdev ivtvdev"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY
Comment 1 Ricky Marshall 2007-09-15 18:25:24 UTC
(In reply to comment #0)

Something I should have pointed out is that it doesn't matter what you type, or whether you type anything at all, for that matter, in response to the two "questions." The ebuild supplies "y" to both.
Comment 2 Sébastien Fabbro (RETIRED) gentoo-dev 2007-09-16 09:47:25 UTC
Hi

I can't reproduce it on amd64. Could you provide the gcl version and the local use flags you are building maxima with?
Also note maxima-5.13.0 is defaulted to sbcl now, and see bug #192449.
    	
Sébastien
Comment 3 Ricky Marshall 2007-09-16 11:49:14 UTC
(In reply to comment #2)
> Hi
> 
> I can't reproduce it on amd64. Could you provide the gcl version and the local
> use flags you are building maxima with?
> Also note maxima-5.13.0 is defaulted to sbcl now, and see bug #192449.
> 
> Sébastien
> 

maxima seems to be using clisp to run even though it evidently builds with gcl.

Another thing about the ebuild was that, after it completed, the string 'y\n' was echoed to the screen continuously. I let it run for a few minutes before giving it ^C. The installation had evidently by then completed successfully.

# equery l gcl
[ Searching for package 'gcl' in all categories among: ]
 * installed packages
[I--] [ ~] dev-lisp/gcl-2.6.7-r3 (0)

# equery l clisp
[ Searching for package 'clisp' in all categories among: ]
 * installed packages
[I--] [ ~] dev-lisp/clisp-2.41 (2)

# equery u maxima
[ Searching for packages matching maxima... ]
[ Colour Code : set unset ]
[ Legend : Left column  (U) - USE flags from make.conf              ]
[        : Right column (I) - USE flags packages was installed with ]
[ Found these USE variables for sci-mathematics/maxima-5.13.0 ]
 U I
 + + clisp         : adds clisp support to maxima
 - - cmucl         : adds cmucl (lisp) support to maxima
 + + emacs         : Adds support for GNU Emacs
 + + gcl           : adds gcl (lisp) support to maxima
 - - linguas_es    : <unknown>
 - - linguas_pt    : <unknown>
 - - linguas_pt_BR : <unknown>
 + + nls           : Adds Native Language Support (using gettext - GNU locale utilities)
 - - sbcl          : adds sbcl (lisp) support to maxima
 - - tetex         : Adds support for teTeX (typesetting package)
 + + tk            : Adds support for Tk GUI toolkit
 + + unicode       : Adds support for Unicode

$ maxima
Maxima 5.13.0 http://maxima.sourceforge.net
Using Lisp CLISP 2.41 (2006-10-13)
Distributed under the GNU Public License. See the file COPYING.
Dedicated to the memory of William Schelter.
This is a development version of Maxima. The function bug_report()
provides bug reporting information.

ricky
Comment 4 Sébastien Fabbro (RETIRED) gentoo-dev 2007-09-19 16:46:49 UTC
> Another thing about the ebuild was that, after it completed, the string 'y\n'
> was echoed to the screen continuously. 

The ebuild doesn't answer such things. It is the package configurator.
I still can't reproduce it with USE="clisp gcl", and with same lisp version. 
And all tests pass fine. I wonder how it happened. 
I am not not familiar with lisp, so CC-ing to lisp team to see if anyone got an idea on it.
Comment 5 Marijn Schouten (RETIRED) gentoo-dev 2007-09-19 16:55:28 UTC
Ricky, this only happens when using clisp?
Comment 6 Marijn Schouten (RETIRED) gentoo-dev 2007-09-19 17:20:43 UTC
I was able to reproduce using:

 USE="gcl clisp" emerge -av maxima

maxima built fine for me using clisp or sbcl and failed pretty hard with gcl. My guess is that the ebuild gets confused when you set BOTH gcl and clisp...
Comment 7 Sébastien Fabbro (RETIRED) gentoo-dev 2007-09-20 11:14:18 UTC
I was finally able to reproduce on a fresh installs of clisp, gcl and maxima.
I am not so sure what changed, may be in clisp-2.41 or gcl-2.6.7-r3 between Sep 14 and Sep 19 had an influence on the maxima building process. maxima with gcl only is now really broken.

Meanwhile I commited a newer maxima-5.13.0 ebuild selecting only one lisp when multiple use lisp flags are enabled. Here is the new maxima lisp priority:
1. sbcl (default)
2. clisp
3. cmucl
4. gcl

The catch is you can not build more than one maxima, e.g. one for clisp and one for sbcl simultaneously, but I doubt this "feature" is really useful anyway.

Comment 8 Ricky Marshall 2007-09-30 22:20:28 UTC
(In reply to comment #7)
> I was finally able to reproduce on a fresh installs of clisp, gcl and maxima.
> I am not so sure what changed, may be in clisp-2.41 or gcl-2.6.7-r3 between Sep
> 14 and Sep 19 had an influence on the maxima building process. maxima with gcl
> only is now really broken.
> 
> Meanwhile I commited a newer maxima-5.13.0 ebuild selecting only one lisp when
> multiple use lisp flags are enabled. Here is the new maxima lisp priority:
> 1. sbcl (default)
> 2. clisp
> 3. cmucl
> 4. gcl
> 
> The catch is you can not build more than one maxima, e.g. one for clisp and one
> for sbcl simultaneously, but I doubt this "feature" is really useful anyway.
> 

Before wxMaxima was available as an ebuild, I had installed it independently of  Portage myself. It was not unusual to encounter trouble with earlier versions of wxMaxima getting it to connect to an underyling Lisp process. I believe that is the reason I ended up with a couple of different implementations of Common Lisp and indiscriminant USE flags. In retrospect it is obviously not tidy.