PJ wrote:

Hi PJ,

> Today in the Fedora Linux list, a person asked if there was a Fedora
> project to build & distribute SAGE.  He spoke with such enthusiasm
> about SAGE that I became interested to see what it does and I'm
> compiling it right now (I figure there's no point in trying to package
> it for Fedora if I can't compile it).   I didn't read your README all
> the way through before the make started--then I did.  Its been going
> about 1 hour so far.  Holy cow. The good news is that all of the
> prerequisites seem to be available and were already installed in my
> system.  (Without a "configure" script to scan for prereqs and refuse
> to build without them, I'm not entirely sure.)
>
> If there is an effort to package SAGE for Fedora, please let me know.

Check out

http://fedoraproject.org/wiki/SIGs/SciTech/SAGE

> I don't find one after some searching.  If anybody has a spec file to
> build an RPM for current SAGE, I'd appreciate seeing it.  Or if you
> have a Debian package configure file, I think I could convert.

Check out

http://wiki.sagemath.org/DebianSAGE

All the Debian config files are inside the individual spkgs in the
dist directory. That actually results in individual packages and for
Debian only about 25 components on the 80 or so in Sage need to be
packaged. That approach does lead to some compatibility and testing
issues, but the monolithic approach is unlikely to work for
distributions. Note that Sage aims to work on much more than just
Linux, so the old "why do you not use what is available on the system"
approach does not work. There are reasons not to do that on Linux
either, but I don't want to rant here.

> The
> only lead I've found so far is that PCLinuxOS, which is an RPM based
> distribution, offers version 2.0.2 of SAGE in rpm format.  I've been
> studying that spec file and it appears to me that some changes in the
> build/install procedure have changed in SAGE itself, at lest if I'm
> understanding the SAGE README.txt file.  PCLinuxOS packaging is enough
> different from Fedora that I'll wrestle with the details.

Well, AFAIK that is the only rpm based packaging effort I am aware of
that got somewhere. Some people are also working on Gentoo ebuilds,
but I am pretty sure that won't help much.

> The build & install procedure for SAGE 3.0.1 is different from almost
> all GNU software in Fedora, where you type "configure ..." "make" and
> "make install DESTDIR=xxx" in a "build root" environment.
>
> I'm curious about a few things in particular.
>
> 1. About the lack of  "make install". Is it correct that after running
> "make", then I can run
>
> $ sage -bdist 3.0.1
>
> and the result that gets deposited in "dist" is a complete, self
> contained set of files that includes everything needed to run SAGE and
> nothing else?  (no source code, etc?).  That resulting directory
> "dist" can be relocated anywhere and SAGE will still run?

Untar the resulting archive, unpack it and it is good to go.

> 2. What does SAGE's build do if it can't find something it wants, such
> as a python devel package or McCauley2?   Don't  you think a
> "configure" script for SAGE would be a good idea?

Nope.

> The build takes so
> long, it seems like a waste that it doesn't check development
> libraries at the start and report back on what it can/can't find.

We build *everything* from source, exceptions are maybe iconv and a
couple other system libraries.

>I "thought" I had the prerequisites because I have everything mentioned
> in the README.  However, the PCLinuxOS setup has several development
> libraries I don't think I have.  Here's a list of some build
> requirements that they list:
>
> BuildRequires:        python-scons
> BuildRequires:        libgfortran
> BuildRequires:        ntl-devel
> BuildRequires:        libgd-devel
> BuildRequires:        libopencdk-develsage-2.9.3-2gri65072007.src.rpm
> BuildRequires:        libgpg-error-devel
> BuildRequires:        libgcrypt-devel
> BuildRequires:        libgnutls-devel
> BuildRequires:        gnutls
> BuildRequires:        scons
> BuildRequires:        libsqlite3_0-devel
> BuildRequires:        mercurial
> BuildRequires:        libfac
> BuildRequires:        clisp
> BuildRequires:        python-gd
> BuildRequires:        IPython
> BuildRequires:        R-base

Sage builds all of the above from source [the exception is fortran for
which we use binaries]. That spec file removed certain  bits from Sage
that are provided by PCLinux OS to make the build quicker and the
binary smaller.

> They have R in the list. That's cool, I like R!  But I can't say for
> sure
>
> 3. I do not understand the README comment 9, on installing GAP.  Once
> SAGE is installed from RPM, users won't have authority to do this for
> themselves, so I better try to take care of it.  I suppose you want
> those things packaged as optional additional components for the SAGE
> program? Or do you rather have them in the one-giant-rpm file?  I
> understand

Individual rpms would the the goal. Sage is designed so that every
installation can be used to develop, so most people do not install in /
opt or /usr/local, but locally. That is changing to some extend, but
if you want to install additional packages via the Sage system you do
need write permission.

> $ ./sage -optional
>
> I don't understand the instructions  "then installing (with ./sage -i)
> the package whose name
>        begins with database_gap. "
>
> I suppose I mean to say, is there a way I can just download those
> additional database files by http or ftp and then install them without
> being interactive with SAGE.

Sage does compile/install those packages along the other packages,
i.e. none of the code touches anything outside the Sage root
directory.

> And, I suppose most importantly, if I run "sage -bdist 3.0.1", will
> those optional database files be included?

If it has been installed at that point: yes.

> 4. Another packaging problem is that the name "sage" is already
> claimed in Fedora by an OpenGL library, and I expect they won't
> approve a package called SAGE.  I was wondering if you support /oppose
> a name like "sagemath".

Sounds fine to me.

Cheers,

Michael
--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/sage-support
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to