That was it.  I missed that jmol was optional now.  Thanks

On Thursday, December 12, 2024 at 12:40:03 PM UTC-8 dim...@gmail.com wrote:

> This most probably just means that jmol package is not installed. It's
> now optional, you need to explicitly say you want it installed.
> The quickest way would by just
>
> make jmol
>
> from the directory you built Sage from.
> Then try running your test again
>
> On Thu, Dec 12, 2024 at 12:24 PM Richard Quint
> <richard...@gmail.com> wrote:
> >
> > I have built Sage from source (sage-10.4.tar.gz and sage-10.5.tar.gz) on
> > four machines with different architectures and different derivatives of
> > Debian. On all machines the jmol viewer for 3d plots works under 10.4
> > but not under 10.5. The RuntimeError Traceback is identical on all
> > machines. A copy of a Sage session is below. Except for the machine
> > specific info the Traceback is identical for each installation. As you
> > can see from the transcript, java is installed. It is used by jmol in
> > 10.4. I don't know enough Python to see what the problem is. Any help
> > would be appreciated.
> >
> > ┌────────────────────────────────────────────────────────────────────┐
> > │ SageMath version 10.5, Release Date: 2024-12-04 │
> > │ Using Python 3.12.7. Type "help()" for help. │
> > └────────────────────────────────────────────────────────────────────┘
> > sage: !uname -a
> > Linux Iphegenia 6.11.0-9-generic #9-Ubuntu SMP PREEMPT_DYNAMIC Mon Oct
> > 14 13:19:59 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
> > sage: !lsb_release -d
> > Description: Ubuntu 24.10
> > sage: !java --version
> > openjdk 21.0.5 2024-10-15
> > OpenJDK Runtime Environment (build 21.0.5+11-Ubuntu-1ubuntu124.10)
> > OpenJDK 64-Bit Server VM (build 21.0.5+11-Ubuntu-1ubuntu124.10, mixed
> > mode, sharing)
> > sage: var('x y')
> > (x, y)
> > sage: plot3d(x*y, (-1,1), (-1,1), viewer="jmol")
> > 
> ---------------------------------------------------------------------------
> > RuntimeError Traceback (most recent call last)
> > Cell In[5], line 1
> > ----> 1 plot3d(x*y, (-Integer(1),Integer(1)), (-Integer(1),Integer(1)),
> > viewer="jmol")
> >
> > File
> > 
> ~/Sage/sage-10.5/local/var/lib/sage/venv-python3.12/lib/python3.12/site-packages/IPython/core/displayhook.py:268,
> > in DisplayHook.__call__(self, result)
> > 266 self.start_displayhook()
> > 267 self.write_output_prompt()
> > --> 268 format_dict, md_dict = self.compute_format_data(result)
> > 269 self.update_user_ns(result)
> > 270 self.fill_exec_result(result)
> >
> > File
> > 
> ~/Sage/sage-10.5/local/var/lib/sage/venv-python3.12/lib/python3.12/site-packages/IPython/core/displayhook.py:157,
> > in DisplayHook.compute_format_data(self, result)
> > 127 def compute_format_data(self, result):
> > 128 """Compute format data of the object to be displayed.
> > 129
> > 130 The format data is a generalization of the :func:`repr` of
> > an object.
> > (...)
> > 155
> > 156 """
> > --> 157 return self.shell.display_formatter.format(result)
> >
> > File ~/Sage/sage-10.5/src/sage/repl/display/formatter.py:187, in
> > SageDisplayFormatter.format(self, obj, include, exclude)
> > 112 def format(self, obj, include=None, exclude=None):
> > 113 r"""
> > 114 Use the Sage rich output instead of IPython.
> > 115
> > (...)
> > 185 I am repper
> > 186 """
> > --> 187 sage_format, sage_metadata = self.dm.displayhook(obj)
> > 188 assert PLAIN_TEXT in sage_format, 'plain text is always
> > present'
> > 190 # use Sage rich output for any except those native to
> > IPython, but only
> > 191 # if it is not plain and dull
> >
> > File ~/Sage/sage-10.5/src/sage/repl/rich_output/display_manager.py:800,
> > in DisplayManager.displayhook(self, obj)
> > 798 self._backend.set_underscore_variable(obj)
> > 799 plain_text, rich_output = self._rich_output_formatter(obj, dict())
> > --> 800 return self._backend.displayhook(plain_text, rich_output)
> >
> > File ~/Sage/sage-10.5/src/sage/repl/rich_output/backend_ipython.py:266,
> > in BackendIPythonCommandline.displayhook(self, plain_text, rich_output)
> > 264 return ({'text/plain': msg}, {})
> > 265 elif isinstance(rich_output, OutputSceneJmol):
> > --> 266 msg = self.launch_jmol(rich_output, plain_text.text.get_str())
> > 267 return ({'text/plain': msg}, {})
> > 268 elif isinstance(rich_output, OutputSceneWavefront):
> >
> > File ~/Sage/sage-10.5/src/sage/repl/rich_output/backend_ipython.py:367,
> > in BackendIPythonCommandline.launch_jmol(self, output_jmol, plain_text)
> > 365 jdata = JmolData()
> > 366 if not jdata.is_jmol_available() and not DOCTEST_MODE:
> > --> 367 raise RuntimeError('jmol cannot run, no suitable java
> > version found')
> > 368 launch_script = output_jmol.launch_script_filename()
> > 369 jmol_cmd = 'jmol'
> >
> > RuntimeError: jmol cannot run, no suitable java version found
> > sage:
> >
> >
> > --
> > 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 visit 
> https://groups.google.com/d/msgid/sage-devel/87e704ba-846b-4f2a-abf2-a7a81e3cff5b%40gmail.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 visit 
https://groups.google.com/d/msgid/sage-devel/fabf3f31-6247-4ee5-b60b-f520c1110ea5n%40googlegroups.com.

Reply via email to