Update of system python

84 views
Skip to first unread message

Niranjana K M

unread,
Aug 31, 2021, 1:18:29 AM8/31/21
to sage-...@googlegroups.com
Hi,
    If sage is built with system python (default behavior) any future update of system python makes sage non-functioning. This is natural. Then how to fix it withoul rebuilding whole sage? Atleast we should rebuild all python dependent stuffs in sage. Which command should i run? I found by trial and error,
$ ./sage -i
helpful. -i without any argument. Is it correct.

It seems,
$ make
will rebuild whole thing again.

Please add few lines on "What to do after system python upgrade?" in sage README or in sage installation documentation. It should address in general any upgrade of system packages on which sage depends.

PS: I use Gentoo. Though it doesn't matter.

With regards
Niranjan

Dima Pasechnik

unread,
Aug 31, 2021, 2:49:18 AM8/31/21
to sage-devel
 We are moving to a "normal" make-based build system.
Please use "make build" rather than
sage -xyz


--
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+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/CAMcUJ1tVYBuUbZq%2B5Kb%3DikHYFyu4%3DfATj7-hfVp4CVCjpaCejg%40mail.gmail.com.

Michael Orlitzky

unread,
Aug 31, 2021, 8:08:03 AM8/31/21
to sage-...@googlegroups.com
On Tue, 2021-08-31 at 10:42 +0530, Niranjana K M wrote:
> Hi,
> If sage is built with system python (default behavior) any future
> update of system python makes sage non-functioning. This is natural.
>
> ...
>
> PS: I use Gentoo. Though it doesn't matter.
>
>

This is true of any software you build/install outside of portage, but
it's made worse by the fact that Sage has so many dependencies and that
python itself changes so quickly (both in general, and in Gentoo).

We are slowly making progress towards using system packages for all of
Sage's dependencies in

https://trac.sagemath.org/ticket/27330

When all of sage's dependencies are picked up by ./configure, you'll
only have to rebuild the sage library whenever something changes. Still
annoying, but it's the best we can do. You'll still have to re-run
./configure and "make build" to kick off the process.

Eventually (we're still a few years away), we'll get sage into the main
Gentoo package repository, and we can use subslot rebuilds to automate
the process for you. Until then, you might want to try the sage-on-
gentoo overlay from

https://github.com/cschwan/sage-on-gentoo

Using the overlay ebuild will also trigger subslot rebuilds when
important pieces of sage change. Unfortunately, that doesn't help if
you're trying to do sage _development_, but again -- it's the best we
can do.


Niranjana K M

unread,
Aug 31, 2021, 10:25:47 AM8/31/21
to sage-devel
Thank you all for clarifying.

I request the development team to add a few lines to README and Sage installation documentation on what any one should do when a dependency gets updated. For example: As Michael Orlitzky wrote,

19. When system python gets updated: When all of sage's dependencies
are picked up by ./configure, you'll  only have to rebuild the sage library
whenever something changes. Still annoying, but it's the best we can do.
You'll still have to re-run `./configure` and `make build` to kick off the process.
Follow the same procedure when any other dependency gets updated.

Matthias Koeppe

unread,
Aug 31, 2021, 4:02:04 PM8/31/21
to sage-devel
In https://trac.sagemath.org/ticket/32442, I have a solution for the specific problem of updating system python. Hopefully we can get it into Sage 9.5.
Reply all
Reply to author
Forward
0 new messages