[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Sagemath: wild experiments


here is a more precise explanation of my experiments.

First, let's see how I do a testing run :
!!! BEWARE the following commands clean part of your home dir then install cruft in your home dir!!!
(1) rm -rf sage-exp .local/lib/python2.7/site-packages/sage*
(cleaning the previous attempt)
(2) cp -R sage.git sage-exp
(getting the upstream source)
(3) cd sage-exp
(4) patch -p1 < ~/unbreak.patch
(5) python ~/pruner.py
(see below about that pruner script)
(6) export MAKE="make -k -j 3"
(not sure the -k is needed anymore)
(7) export SAGE_ATLAS_LIB="/usr/lib"
(not sure it's needed at all)
(8) make ptestlong
(will build sage, install parts of it in ~/.local, compile the documentation, then run the tests)

The pruner python script is obtained by running a configure script ; its goal is to find out what is on the system and make sage use that instead of its own version. You're not supposed to try all combinations of have/haven't : it doesn't do anything smart with deps. The current version prints the following for me:
libgap will not come from debian!
cddlib will not come from debian!
singular will not come from debian!
jmol will not come from debian!
95 system packages will be used

So if it complains about something else not coming from debian, you should have a look at why it thinks you don't have it, and get it.

Some packages need special tricks :
- sagenb comes from the debian-science git repository ;
- lcalc is available in debian, but you'll need the +dfsg-4 I pushed in the debian-science repository ; - rubiks is available since this morning in the debian-science repository ; I'll have to review it and ask for sponsorship later ; - singular (3-1-6) from the debian-science needs to be installed, even if sage compiles its own (it's probably wrong, but I don't really care since I'm waiting for a good package) ; - maxima is quite complex to get going. The usual debian packages should be installed first to make configure happy, but then some more needs to be done : start from a debian package source, apply sage's build-fasl.patch patch, add --enable-ecl to the debian/rules configure line, "make -f debian/rules binary" (will fail unless root : not a problem!), then copy (as root) src/binary-ecl/maxima.fas as /usr/lib/ecl-13.5.1/maxima.fas. To see if that worked, launch ecl the following should tell you it managed to load things :
(require 'maxima)
(in-package maxima)

There are still quite a few problems with the maxima+ECL combination : a few tests fail because the output looks like what sage expects on 32 bits while I'm on 64 bits, other because of some crash... I'm still working on it.

You'll find attached everything needed to reproduce the above.

Snark on #debian-science

Attachment: archive.tar.bz2
Description: application/bzip

Reply to: