How to know what version of Maxima is sagemath using?

56 views
Skip to first unread message

Nasser M. Abbasi

unread,
Jul 30, 2025, 12:42:40 PMJul 30
to sage-devel
I am on CachyOS Linux. I do not build anything from source anymore and just use pacman package manager to install all software.

I installed sagemath using pacman a week ago and also installed maxima 5.47. Everything was working OK. maxima was working oK on its own also.

Last night, I did system update, and pacman updated maxima to the new version of Maxima just released which is 5.48.

But due to SBCL problem with maxima (reported to Maxima), can't use maxima directly from command line. It gives error. But I am able to call maxima integrate from inside sagemath with no error.

So I am wondering now if when calling integrate with algorithm="maxima" . if it is using 5.48 or some other version, may be linked internally inside sagemath binary? When calling 

sage: print(maxima.version())

from inside sagemath it gives same error I get from command line.

Is it possible the integrate command is still using maxima 5.48, but this error does not affect this call?

>which maxima
/usr/bin/maxima 

 >maxima
fatal error encountered in SBCL pid 4350 tid 4350:
core was built for runtime "hostname-id-1753844457" but this is "hostname-id-1753845453"

 >sage
┌────────────────────────────────────────────────────────────────────┐
│ SageMath version 10.6, Release Date: 2025-03-31                    │
│ Using Python 3.13.5. Type "help()" for help.                       │
└────────────────────────────────────────────────────────────────────┘
sage: var('x')
x
sage: integrate(sin(x),x,algorithm="maxima")
-cos(x)
sage: print(maxima.version())
fatal error encountered in SBCL pid 97224 tid 97224:
core was built for runtime "hostname-id-1753844457" but this is "hostname-id-1753845453"

---------------------------------------------------------------------------
IndexError                                Traceback (most recent call last)
Cell In[3], line 1
----> 1 print(maxima.version())

File /usr/lib/python3.13/site-packages/sage/interfaces/maxima_abstract.py:431, in MaximaAbstract.version(self)
    420 def version(self):
    421     r"""
    422     Return the version of Maxima that Sage includes.
    423
   (...)    429         '5.41.0'
    430     """
--> 431     return maxima_version()

File /usr/lib/python3.13/site-packages/sage/interfaces/maxima_abstract.py:2154, in maxima_version()
   2142 """
   2143 Return Maxima version.
   2144
   (...)   2151     '5.41.0'
   2152 """
   2153 with os.popen('{} --version'.format(MAXIMA)) as p:
-> 2154     return p.read().split()[-1]

IndexError: list index out of range
sage:
 
My question again: is integrate command above using maxima 5.48 installed on the system, even though maxima does not start from command line? Here is my sagemath pacman info

>pacman -Qi sagemath
Installed From  : None
Name            : sagemath
Version         : 10.6-6.2
Description     : Open Source Mathematics Software, free alternative to Magma, Maple, Mathematica, and Matlab
Architecture    : x86_64_v4
URL             : http://www.sagemath.org
Licenses        : GPL-2.0-or-later
Groups          : None
Provides        : None
Depends On      : brial  cblas  cliquer  ecl  eclib  fflas-ffpack  flint  gap  gcc-libs  gd  gfan  givaro  glibc  glpk  gmp
                 gmp-ecm  gsl  iml  ipython  lcalc  libbraiding  libhomfly  libmpc  linbox  lrcalc  m4ri  m4rie  maxima-fas
                 mpfi  mpfr  nauty  ntl  palp  pari  pari-galdata  pari-seadata-small  planarity  python
                 python-conway-polynomials  python-cvxopt  python-cysignals  python-cypari2  python-docutils  python-fpylll
                 python-ipywidgets  python-matplotlib  python-memory-allocator  python-mpmath  python-networkx  python-numpy
                 python-pexpect  python-pillow  python-pplpy  python-primecountpy  python-pygments  python-pyparsing
                 python-requests  python-rpy2  python-scipy  python-sphinx  python-sympy  python-traitlets  rankwidth
                 sage-data-elliptic_curves  sage-data-graphs  sage-data-polytopes_db  singular  symmetrica  sympow  tachyon
                 threejs-sage
Optional Deps   : benzene: for generating fusenes and benzenoids
                 blas-openblas: faster linear algebra
                 bliss: bliss backend for graph theory
                 buckygen: for generating fullerene graphs
                 coin-or-csdp: for computing Lovász theta-function of graphs
                 coxeter: Coxeter groups implementation
                 cryptominisat: SAT solver
                 cython: to compile cython code
                 dot2tex: for displaying some diagrams
                 ffmpeg: to export animations to video [installed]
                 fricas: FriCAS interface [installed]
                 imagemagick: to show animations [installed]
                 jmol: alternative 3D plot engine
                 jupyter-jsmol: alternative 3D plot engine in the Jupyter notebook
                 lrs: Algorithms for linear reverse search used in game theory and for computing volume of polytopes
                 latte-integrale: integral point count in polyhedra
                 msolve: polynomial system solving via msolve
                 plantri: for generating some classes of graphs
                 python-cvxpy: interface for several convex optimization backends
                 python-database-cubic-hecke: cubic Hecke algebras
                 python-database-knotinfo: interface to the KnotInfo and LinkInfo databases
                 python-igraph: igraph backend for graph theory
                 python-jupymake: polymake backend for polyhedral computations
                 python-matroid-database: matroids database
                 python-phitigra: graph editor
                 python-pkgconfig: to compile cython code
                 python-pycosat: picosat SAT solver
                 python-pynormaliz: Normaliz backend for polyhedral computations
                 python-pyscipopt: SCIP mixed integer linear programming backend
                 rubiks: Rubiks cube algorithms
                 sage-data-cunningham_tables: list of prime numbers in the Cunningham table
                 sagemath-doc: HTML documentation
                 sagemath-giac: giac integration backend [installed]
                 shared_meataxe: faster matrix arithmetic over finite fields
                 sirocco: for computing the fundamental group of the complement of a plane curve
                 topcom: to compute triangulations of point configurations
Required By     : sagemath-giac
Optional For    : None
Conflicts With  : None
Replaces        : None
Installed Size  : 530.48 MiB
Packager        : CachyOS <ad...@cachyos.org>
Build Date      : Sat 14 Jun 2025 10:14:59 PM CDT
Install Date    : Sat 19 Jul 2025 05:49:32 AM CDT
Install Reason  : Installed as a dependency for another package
Install Script  : No
Validated By    : Signature


Thanks
--Nasser

Antonio Rojas

unread,
Jul 30, 2025, 1:01:50 PMJul 30
to sage-devel
The maxima command issue us caused by an incomplete SBCL upgrade and should be already fixed. The Sage maxima interface for integration uses the ECL backend so it's not affected by that issue.

Nils Bruin

unread,
Jul 30, 2025, 1:28:52 PMJul 30
to sage-devel
For the question about seeing which version of maxima is used by calculus (through the ECL backend):

maxima_calculus.version()
Reply all
Reply to author
Forward
0 new messages