3-manifolds/SnapPy

error in GUI -> "Inside View" -> _tkinter.TclError: unknown option "-profile"

Closed this issue · 3 comments

karqo commented

The following error occurs after creating a manifold, calling browse() and clicking the tab "Inside view" (the concerning error message then appears in the tab's content body):

Could not instantiate view. Error was:

Traceback (most recent call last):
   File "~/.local/lib/python3.9/site-packages/snappy/browser.py". line 450, in build_inside_view
      self.inside_view = InsideViewer(self, self.manifold,
   File "~/.local/lib/python3.9/site-packages/snappy/raytracing/inside_viewer.py", line 29, in __init__
      main_frame = self.create_frame_with_main_widget(
   File "~/.local/lib/python3.9/site-packages/snappy/raytracing/inside_viewer.py", line 459, in create_frame_with_main_widget
     self.widget = RaytracingView(
   File "~/.local/lib/python3.9/site-packages/snappy/raytracing/raytracing_view.py", line 160, in __init__
     SimpleImageShaderWidget.__init__(
   File "opengl/CyOpenGL.pyx", line 2275, in CyOpenGL.SimpleImageShaderWidget.__init__
   File "opengl/CyOpenGL.pyx", line 135, in CyOpenGL.RawOpenGLWidget.__init__
   File "usr/lib/python3.9/tkinter/__init__.py", line 2575, in __init__
     self.tk.call(
 _tkinter.TclError: unknown option "-profile"
 Couldn't configure togl widget

Everything else appears to work fine.
The environment is Ubuntu (16.04, 32bit, with python 3.9).
To get the GUI working for 32bit, I'm using libTogl2.0.so instead of libTogl2.1.so in ~/.local/lib/python3.9/site-packages/snappy/togl/linux2-tk8.6.
So possibly that is a 32/64bit compatibility issue as to the usage of Togl?
Can this be fixed?

Yes, you need to use Togl2.1 to make the inside view work. It could probably be compiled for 32bit cpus on the appropriate build system. The source code is included. Perhaps you could try building Togl2.1 on your system?

Specifically, the relevant code is in here. I don't remember the specifics of building Togl on Linux; hopefully a simple ./configure; make does the trick.

Closing issue due to age and lack of activity.