Eigenvalues of a difficult matrix (storage for CONS is exhausted)
Subject: Eigenvalues of a difficult matrix (storage for CONS is exhausted)
From: Francesco Poli
Date: Fri, 3 May 2002 11:48:16 +0200
Hello everybody! :)
I have to compute the eigenvalues of a very complicated matrix (that is
the derivative of another matrix which depends on some unknown
functions of the variable...).
Guess what?
Maxima gives me this error:
Correctable error: The storage for CONS is exhausted.
Currently, 27647 pages are allocated.
Use ALLOCATE to expand the space.
Signalled by CATCH.
If continued: Continues execution.
Broken at MACSYMA-TOP-LEVEL. Type :H for Help.
MAXIMA>>
I searched ALLOCATE in Maxima manual, but without success...
So I searched in the mailing-list archive and found that this
limitation may be expanded only at GCL compile-time.
Did I misunderstand something?
I downloaded gcl-2.4.0.tgz and maxima-5.6.tgz.
I untarred gcl-2.4.0.tgz and followed readme-file instructions:
$ cd gcl-2.4.0/
$ ./configure --prefix=${HOME}/gcl '--enable-maxpage=256*1024'
No errors (but patching o/makefile for gcc bug in 2.96).
$ make
[...]
make[1]: Entering directory `/home5/fspoli/temp_src/gcl-2.4.0/unixport'
cc -c -I../h -c -o ../mp/mpi.o ../mp/mpi.c
cc -c -I../h -c -o ../mp/mp2.o ../mp/mp2.c
make[1]: *** No rule to make target `../mp/libmport.a', needed by
`raw_gcl'. Stop.
make[1]: Leaving directory `/home5/fspoli/temp_src/gcl-2.4.0/unixport'
make: *** [all] Error 2
I found a thread in the ML archive about this error and the advice was
"use the latest GCL cvs snapshot".
I tried but obtained exactly the same error...
I tried to pass the option --enable-gmp=no to the configure script but
`make' gives the following errors:
[...]
In file included from ../h/include.h:57,
from gbc.c:31:
../h/mp.h:122: parse error before `big_register_1'
../h/mp.h:122: warning: data definition has no type or storage class
../h/mp.h:124: parse error before `big_minus'
../h/mp.h:124: warning: data definition has no type or storage class
../h/mp.h:125: parse error before `make_bignum'
../h/mp.h:125: warning: data definition has no type or storage class
../h/mp.h:126: parse error before `make_integer'
../h/mp.h:126: warning: data definition has no type or storage class
In file included from ../h/include.h:72,
from gbc.c:31:
../h/att_ext.h:61: conflicting types for `big_minus'
../h/mp.h:124: previous declaration of `big_minus'
In file included from ../h/include.h:74,
from gbc.c:31:
../h/compbas2.h:42: conflicting types for `make_integer'
../h/mp.h:126: previous declaration of `make_integer'
gbc.c: In function `mark_object':
gbc.c:401: request for member `_mp_d' in something not a structure or
union
gbc.c:418: request for member `_mp_d' in something not a structure or
union
In file included from gbc.c:1331:
sgbc.c: In function `sgc_mark_object1':
sgbc.c:321: warning: comparison between pointer and integer
sgbc.c:338: request for member `_mp_d' in something not a structure or
union
sgbc.c:356: request for member `_mp_d' in something not a structure or
union
make[1]: *** [gbc.o] Error 1
make[1]: Leaving directory `/home5/fspoli/temp_src/gcl-2.4.0/o'
make: *** [all] Error 2
My distro is RedHat 7.2
CPUs are two AthlonMP
gcc version is 2.96
What can I do?
How can I compute those eigenvalues?
TNX to anyone can help! :)
--
Francesco Poli <frx@firenze.linux.it>
===================================================
"May the Source be with you!" -- Eric S. Raymond