On Wed, Mar 10, 2021 at 1:29 PM E. Madison Bray <erik.m.b...@gmail.com> wrote:
>
> On Tue, Mar 9, 2021 at 6:13 PM Nathan Dunfield <nat...@dunfield.info> wrote:
> >
> > An update: I just tried three different binary versions on Linux: The 
> > Ubuntu 20.04 binary posted at SageMath.org, the sagemath/sagemath:develop 
> > Docker image, and conda on RHEL 7.  None of them "just worked" with "sage 
> > -i foo".  The Docker image and conda failed completely with
> >
> > make: *** No rule to make target 'all-toolchain'.  Stop.
> >
> > I got farther with the Ubuntu binary.  Choosing "sage -i pyflakes", it 
> > successfully pip-installed pyflakes and then started rebuilding all of Sage 
> > from scratch, starting with libpng, pkgconf, etc.  So in some sense this 
> > worked --- I was able to abort the build and import pyflakes --- but in the 
> > end was equivalent to building Sage from source if I hadn't stopped it.
>
> Yes, this has been a persistent problem.  It's a problem on
> Sage-Windows as well.  In the past I've gotten it to work, but every
> time people make changes to the build system (which is often) it tends
> to break again, and as Matthias pointed out there is a not a
> well-established process for testing this (I try to test it manually
> but don't always remember to; or sometimes I do test it, but throw up
> my hands when it doesn't work because I don't want to hold up the
> release any longer).
>
> A big part of the problem is that the system for installing packages
> is badly interwoven with the build system for Sage itself.  There is a
> good reason for this: If one of sagelib's build dependencies is
> changed, it is necessary to rebuild sagelib.
>
> For optional/experimental packages I think we should try to
> disentangle them a bit better from the "normal" build system.  They
> really should be "drop-in" and not require a rebuild of sagelib.
>
> Part of my original goals for developing the "DESTDIR" build system
> was so that it would eventually be easier to build binary packages for
> optional packages.  I wanted to be able to use this on Windows, for
> example, by allowing users to select optional packages by just
> unpacking pre-built tarballs, but I never got around to materializing
> that goal.  Of course, if such a system did exist it should be
> available for other platforms as well.

For what it's worth, I was unable to reproduce on my own machine the
problem with building R on Cygwin encountered by Matthias which
prompted this discussion.  To me, this suggests there is not a deep or
inherent problem with building R on Cygwin, and that the problem might
be localized to a specific configuration, possibly related to his CI
scripts.  It definitely merits further investigation, but it is likely
a minor problem with linking or dependencies.

Since I can't reproduce the problem (yet, though I'm trying some
things) and since I build the Windows binary releases I'm less
inclined to think it's a blocker issue.  Though it is unfortunate that
it's breaking the CI and that should still get fixed.

> > On Tuesday, March 9, 2021 at 9:00:22 AM UTC-6 Nathan Dunfield wrote:
> >>
> >> To what extent does installing optional packages "just work" with the 
> >> current binary distributions of Sage?  I'm thinking of both those posted 
> >> on sagemath.org as well as things not directly under our control such as 
> >> the sage packages for conda, debian, gentoo, etc.  My past experience has 
> >> been that "sage -i foo" works only if I had built Sage from source, though 
> >> I haven't tried any of the binaries recently.
> >>
> >> I bring this up because the user impact of moving R or any other package 
> >> to optional depends tremendously on whether "sage -i R" just works.  If 
> >> switching R to optional is tantamount to requiring users of R to build all 
> >> of Sage from source, that would be very disruptive for those users of R in 
> >> Sage.  Building Sage from source  is a huge hurdle for 95% users and a 
> >> nontrivial hassle for the rest.
> >>
> >> Best,
> >>
> >> Nathan
> >
> > --
> > 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 view this discussion on the web visit 
> > https://groups.google.com/d/msgid/sage-devel/4c6b267c-b29d-4aae-8bbd-f52f7f9ae820n%40googlegroups.com.

-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/CAOTD34YfC64YnU-_7wNKUVSoVTasMJZBmXSXMnghjoV%2B6xUk4g%40mail.gmail.com.

Reply via email to