Sagemath binary is old and fails to install properly on Ubuntu 20.04.5 LTS

25 views
Skip to first unread message

David Kirkby

unread,
Feb 8, 2023, 6:12:31 AMFeb 8
to sage-support
Some of you may remember me - I did a fair amount of work porting Sage to Solaris SPARC.

I wanted to try sage, and could not be bothered to build from source, so thought I'd just install a binary onto a Dell 7920 tower workstation (2 x 26-core 2.0 GHz CPUs with 384 GB RAM) running Ubuntu 20.04.5 LTS.

1) First sage is not installed, and never has been on this system.
drkirkby@canary:~/Desktop$ sage

Command 'sage' not found, but can be installed with:

sudo apt install sagemath-common

2) I try to install Sage - this gives a number of error messages.
drkirkby@canary:~/Desktop$ sudo apt install sagemath-common
[sudo] password for drkirkby:
Reading package lists... Done
Building dependency tree      
Reading state information... Done
The following packages were automatically installed and are no longer required:
  chromium-codecs-ffmpeg-extra gstreamer1.0-vaapi guile-2.2
  libalgorithm-c3-perl libaqbanking-data libaqbanking44
  libb-hooks-endofscope-perl libb-hooks-op-check-perl libcgi-fast-perl
  libcgi-pm-perl libclass-c3-perl libclass-c3-xs-perl
  libclass-data-inheritable-perl libclass-inspector-perl
  libclass-method-modifiers-perl libclass-singleton-perl
  libclass-xsaccessor-perl libcommon-sense-perl libdata-optlist-perl
  libdate-manip-perl libdatetime-format-strptime-perl libdatetime-locale-perl
  libdatetime-perl libdatetime-timezone-perl libdbi1 libdevel-callchecker-perl
  libdevel-caller-perl libdevel-lexalias-perl libdevel-stacktrace-perl
  libdynaloader-functions-perl libeval-closure-perl libexception-class-perl
  libfcgi-perl libfile-sharedir-perl libfinance-quote-perl libfwupdplugin1
  libgstreamer-plugins-bad1.0-0 libgwengui-gtk3-0 libgwenhywfar-data
  libgwenhywfar79 libhtml-tableextract-perl libjson-parse-perl libjson-perl
  libjson-xs-perl libllvm11 libmodule-implementation-perl
  libmodule-runtime-perl libmro-compat-perl libnamespace-autoclean-perl
  libnamespace-clean-perl libofx7 libosp5 libpackage-stash-perl
  libpackage-stash-xs-perl libpadwalker-perl libparams-classify-perl
  libparams-util-perl libparams-validationcompiler-perl libreadonly-perl
  libref-util-perl libref-util-xs-perl librole-tiny-perl libspecio-perl
  libsub-exporter-perl libsub-exporter-progressive-perl libsub-identify-perl
  libsub-install-perl libsub-quote-perl libtext-template-perl
  libtypes-serialiser-perl libva-wayland2 libvariable-magic-perl libxmlb1
  libxstring-perl shim
Use 'sudo apt autoremove' to remove them.
The following NEW packages will be installed
  sagemath-common
0 to upgrade, 1 to newly install, 0 to remove and 39 not to upgrade.
Need to get 16.2 MB of archives.
After this operation, 205 MB of additional disk space will be used.
Get:1 http://gb.archive.ubuntu.com/ubuntu focal/universe amd64 sagemath-common all 9.0-1ubuntu4 [16.2 MB]
Fetched 16.2 MB in 1s (11.0 MB/s)          
Selecting previously unselected package sagemath-common.
(Reading database ... 382458 files and directories currently installed.)
Preparing to unpack .../sagemath-common_9.0-1ubuntu4_all.deb ...
Unpacking sagemath-common (9.0-1ubuntu4) ...
Setting up sagemath-common (9.0-1ubuntu4) ...
/usr/lib/python3/dist-packages/sage/combinat/root_system/branching_rules.py:1753
: SyntaxWarning: "is not" with a literal. Did you mean "!="?
  if len(stypes) is not 2:
/usr/lib/python3/dist-packages/sage/graphs/graph_latex.py:1159: SyntaxWarning: '
str' object is not callable; perhaps you missed a comma?
  raise TypeError('%s option must be a dictionary, not %s' (name, value))
/usr/lib/python3/dist-packages/sage/graphs/graph_latex.py:1168: SyntaxWarning: '
str' object is not callable; perhaps you missed a comma?
  raise TypeError('%s option must be a dictionary, not %s' (name, value))
/usr/lib/python3/dist-packages/sage/graphs/graph_latex.py:1175: SyntaxWarning: '
str' object is not callable; perhaps you missed a comma?
  raise TypeError('%s option must be a dictionary, not %s' (name, value))
/usr/lib/python3/dist-packages/sage/graphs/graph_latex.py:1182: SyntaxWarning: '
str' object is not callable; perhaps you missed a comma?
  raise TypeError('%s option must be a dictionary, not %s' (name, value))
/usr/lib/python3/dist-packages/sage/graphs/graph_latex.py:1189: SyntaxWarning: '
str' object is not callable; perhaps you missed a comma?
  raise TypeError('%s option must be a dictionary, not %s' (name, value))
/usr/lib/python3/dist-packages/sage/graphs/graph_latex.py:1196: SyntaxWarning: '
str' object is not callable; perhaps you missed a comma?
  raise TypeError('%s option must be a dictionary, not %s' (name, value))
/usr/lib/python3/dist-packages/sage/graphs/graph_latex.py:1203: SyntaxWarning: '
str' object is not callable; perhaps you missed a comma?
  raise TypeError('%s option must be a dictionary, not %s' (name, value))
Processing triggers for man-db (2.9.1-1) ..

3) I thought I would upgrade the system and try again. (Yes, I should have done that before trying to install, but I have not known failing to do this causing a problem before).
drkirkby@canary:~/Desktop$ sudo apt-get upgrade
Reading package lists... Done
Building dependency tree      
Reading state information... Done
Calculating upgrade... Done
The following packages were automatically installed and are no longer required:
  chromium-codecs-ffmpeg-extra gstreamer1.0-vaapi guile-2.2 libalgorithm-c3-perl libaqbanking-data libaqbanking44 libb-hooks-endofscope-perl libb-hooks-op-check-perl
  libcgi-fast-perl libcgi-pm-perl libclass-c3-perl libclass-c3-xs-perl libclass-data-inheritable-perl libclass-inspector-perl libclass-method-modifiers-perl
  libclass-singleton-perl libclass-xsaccessor-perl libcommon-sense-perl libdata-optlist-perl libdate-manip-perl libdatetime-format-strptime-perl libdatetime-locale-perl
  libdatetime-perl libdatetime-timezone-perl libdbi1 libdevel-callchecker-perl libdevel-caller-perl libdevel-lexalias-perl libdevel-stacktrace-perl
  libdynaloader-functions-perl libeval-closure-perl libexception-class-perl libfcgi-perl libfile-sharedir-perl libfinance-quote-perl libfwupdplugin1
  libgstreamer-plugins-bad1.0-0 libgwengui-gtk3-0 libgwenhywfar-data libgwenhywfar79 libhtml-tableextract-perl libjson-parse-perl libjson-perl libjson-xs-perl libllvm11
  libmodule-implementation-perl libmodule-runtime-perl libmro-compat-perl libnamespace-autoclean-perl libnamespace-clean-perl libofx7 libosp5 libpackage-stash-perl
  libpackage-stash-xs-perl libpadwalker-perl libparams-classify-perl libparams-util-perl libparams-validationcompiler-perl libreadonly-perl libref-util-perl
  libref-util-xs-perl librole-tiny-perl libspecio-perl libsub-exporter-perl libsub-exporter-progressive-perl libsub-identify-perl libsub-install-perl libsub-quote-perl
  libtext-template-perl libtypes-serialiser-perl libva-wayland2 libvariable-magic-perl libxmlb1 libxstring-perl shim
Use 'sudo apt autoremove' to remove them.
The following packages have been kept back:
  linux-headers-oem-20.04d linux-image-oem-20.04d linux-oem-20.04d python3-software-properties software-properties-common software-properties-gtk
0 to upgrade, 0 to newly install, 0 to remove and 6 not to upgrade.
drkirkby@canary:~/Desktop$

4) I try to run Sage, thinking it might be installed, which version 9.0 is, but it does not run properly
drkirkby@canary:~/Desktop$ sage
┌────────────────────────────────────────────────────────────────────┐
│ SageMath version 9.0, Release Date: 2020-01-01                     │
│ Using Python 3.8.10. Type "help()" for help.                       │
└────────────────────────────────────────────────────────────────────┘
Traceback (most recent call last):
  File "/usr/share/sagemath/bin/sage-ipython", line 12, in <module>
    from sage.repl.interpreter import SageTerminalApp
  File "/usr/lib/python3/dist-packages/sage/repl/interpreter.py", line 105, in <module>
    from sage.repl.preparse import preparse, containing_block
  File "/usr/lib/python3/dist-packages/sage/repl/preparse.py", line 227, in <module>
    from sage.repl.load import load_wrap
  File "/usr/lib/python3/dist-packages/sage/repl/load.py", line 19, in <module>
    from sage.cpython.string import str_to_bytes, bytes_to_str, FS_ENCODING
ModuleNotFoundError: No module named 'sage.cpython.string'


I guess I will have to build from source, which I know from experience can be a PITA.

Dave

Dima Pasechnik

unread,
Feb 8, 2023, 6:27:23 AMFeb 8
to sage-s...@googlegroups.com
Hi Dave,

On Wed, Feb 8, 2023 at 11:12 AM David Kirkby <drki...@gmail.com> wrote:
>
> Some of you may remember me - I did a fair amount of work porting Sage to Solaris SPARC.
>
> I wanted to try sage, and could not be bothered to build from source, so thought I'd just install a binary onto a Dell 7920 tower workstation (2 x 26-core 2.0 GHz CPUs with 384 GB RAM) running Ubuntu 20.04.5 LTS.
>
> 1) First sage is not installed, and never has been on this system.
> drkirkby@canary:~/Desktop$ sage
>
> Command 'sage' not found, but can be installed with:
>
> sudo apt install sagemath-common

We aren't maintaining Ubuntu/Debian packages, so this report should
not have gone here. :-)
Some years/releases Debian packaging of Sage is in good shape, some
years it's falling behind,
but we are trying to be helpful. (Debian is permanently short on
hands, and also slowed down
by their rather slow workflow...)
Not sure about Ubuntu, what they use and how they maintain their Sage
packages, they never showed up here.
(typically Ubuntu just uses Debian packages, but not always)
The quickest way may be to install and use Conda, they package Sage
very well - but if you want to build from source, sure...

Cheers,
Dima

>
> Dave
>
> --
> You received this message because you are subscribed to the Google Groups "sage-support" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to sage-support...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/sage-support/4c49abd2-34c3-42e0-98bf-2fb104a39568n%40googlegroups.com.

Jan Groenewald

unread,
Feb 8, 2023, 9:29:52 AMFeb 8
to sage-s...@googlegroups.com

David Kirkby

unread,
Feb 8, 2023, 12:04:39 PMFeb 8
to sage-support
On Wednesday, 8 February 2023 at 11:27:23 UTC dim...@gmail.com wrote:
Hi Dave,

Hi Dima

We aren't maintaining Ubuntu/Debian packages, so this report should
not have gone here. :-) 
Some years/releases Debian packaging of Sage is in good shape, some
years it's falling behind,
but we are trying to be helpful. (Debian is permanently short on
hands, and also slowed down
by their rather slow workflow...)

In which case


should be updated to reflect that. As should


which says "SageMath used to provide pre-built binaries for several Linux flavors. This has been discontinued, as most major Linux distributions have up-to-date distribution packages providing SageMath. See Linux package managers for information."

Dave

Dima Pasechnik

unread,
Feb 8, 2023, 12:18:35 PMFeb 8
to sage-support
we should give the link


to show where to look for a Linux distro with a relatively recent SageMath.

I agree it's not really "most" - although that table has a lot of outdated distros people don't use anymore anyway.

Dima




Dave

--
You received this message because you are subscribed to the Google Groups "sage-support" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sage-support...@googlegroups.com.

John H Palmieri

unread,
Feb 8, 2023, 3:57:35 PMFeb 8
to sage-support
For what it's worth, every now and then I create a virtual linux machine and build Sage from source using the instructions in the installation guide, including installing the recommended prerequisite software. It typically goes smoothly, and it's definitely worth trying on Ubuntu. (I've done this with Ubuntu 22.04.1 LTS.)

Jan Groenewald

unread,
Feb 8, 2023, 4:14:50 PMFeb 8
to sage-s...@googlegroups.com
Oh, you need sagemath not sagemath-common. Makes sense actually, by debian package name conventions.

~$apt-cache show sagemath-common|grep This
 This package contains the architecture-independent files of SageMath.

Regards,
Jan

Reply all
Reply to author
Forward
0 new messages