Jan Groenewald wrote:
On 19 April 2014 17:15, leif <not.rea...@online.de
<mailto:not.rea...@online.de>> wrote:

    Depends: build-essential, gfortran [probably also m4]


Are build-essential and m4 not only from-source build dependencies? I
would maybe move them to Suggests: Is there runtime functionality, a
function you would call in the notebook, that would need build-essential
and m4?

Most probably not m4 (it's only needed in Sage to [re]build MPIR/GMP IIRC), but any Cython code, e.g. also in a notebook cell, needs build-essentials.


Note the PPA is not ideal for installing optional packages. The relevant
folders are owned by root, so the sage -i must be run as root, which is
bad practice.

So you'd have to sudo 'sage -b' as well?


    (gfortran already depends on libgfortran3.)


Right, gfortran and (or only) libgfortran are runtime dependencies for
some functionality?

Unless one wants to rebuild some packages using Fortran, I think libgfortran is sufficient, but there may be doctests trying to run the Fortran compiler, or scripts checking its presence, as well.


It looks like it suggests on gfortran-multilib which depends on
libgfortran-4.8-multilib,

I don't think multilib stuff makes any sense (unless you e.g. ship the optional KaSH3 package, which contains an x86 pre-built binary, but that's statically linked).


Are there runtime functionalities, that is functions that will not work
if imagemagick and openssh-client is not installed?

Not sure about the former, but presumably yes.

OpenSSH client is for example needed to interact with Sage's git-trac.


    (Note that openssh-client already depends on OpenSSL.  We could
    still require it, but then I'd use libssl-dev.)


I think libssl1 should at least be Suggests and perhaps Recommends. The
PPA is really meant for a stanadalone laptop, not a server, but we teach
our students how to start a secure server when SSHing into a computer
lab desktop so they can connect from their laptop, which might become a
general use case for us, or for example, to connect from a tablet.

Well, for the PPA, you should IMHO build Sage's Python with libssl-dev present, then libssl will be a runtime dependency, since Sage doesn't ship it. Or copy Trusty's versions into $SAGE_LOCAL/lib... ;-) [Then including the optional PyOpenSSL into the build would also make sense.]


The PPA is not really meant for developers, but I guess that is fine. I
certainly run the PPA and a from source next to each other to compare
when there are bugs. I might be the only one.

My impression is that at least /some/ Sage developers prefer to use the PPA (or pre-built binaries) on their netbooks or (low-end) notebooks. And on ARM machines ... X-)


    In the future, I'd also require libreadline-dev, but unfortunately
    currently Sage doesn't even try to use a system-wide one (instead of
    its meanwhile outdated version 6.2, asking for trouble at least on
    other distros like Arch Linux and OpenSuSE).

I feel like all of these should move to Recommends, so they get
installed by default through the apt-get and software centre, but a
sysadm could --without-recommends them if they want.

Well, you should check (e.g. with ldd) what (system) libraries your binaries depend on; those of course should be in "Depends:".

But I don't know whether or which Sage packages (such as readline) you replace by system ones.


Note, the only Build-Depends for the PPA DEB package, is actually only
debhelper. It really just copies a compiled binary into place, as one
would wiht a binary pacakge. The PPA is a stopgap for a few years until
debianization is complete ;) It was way to hard to make a
sagemath-monolithic that actually builds all the components through a
debian rules file. And that is REALLY not the debian way.

Yep, but as mentioned, as soon as Cython is involved, "using" Sage needs build tools.


-leif

P.S.: Beat the Ubuntu guys for not releasing fixed versions of Ubuntu/Linaro GCC 4.6.3 for Precise. (They still ship the broken 1ubuntu5 IIRC, although the fixes had been there two years ago.)

--
() The ASCII Ribbon Campaign
/\   Help Cure HTML E-Mail

--
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to