Opened 7 years ago

Closed 7 years ago

#1639 closed defect (fixed)

ISOLDE installation: UnicodeDecodeError

Reported by: n.keep@… Owned by: Tristan Croll
Priority: normal Milestone:
Component: Third Party Version:
Keywords: Cc: Conrad Huang
Blocked By: Blocking:
Notify when closed: Platform: all
Project: ChimeraX

Description

The following bug report has been submitted:
Platform:        Linux-3.10.0-862.3.2.el7.x86_64-x86_64-with-centos-7.5.1804-Core
ChimeraX Version: 0.8 (2018-12-17)
Description
Me again this time trying a linux installation of Isolde(Describe the actions that caused this problem to occur here)

Log:
Startup Messages  
---  
note | available bundle cache has not been initialized yet  
  
UCSF ChimeraX version: 0.8 (2018-12-17)  
How to cite UCSF ChimeraX  
Updating list of available bundles failed: 'ChimeraX_ISOLDE'  
Downloading bundle ChimeraX_ISOLDE-1.0b2-cp36-cp36m-linux_x86_64.whl  
unloading module chimerax.isolde  
Traceback (most recent call last):  
File "/opt/UCSF/ChimeraX/lib/python3.6/site-
packages/chimerax/ui/widgets/htmlview.py", line 386, in download_finished  
session=self.session)  
File "/opt/UCSF/ChimeraX/lib/python3.6/site-
packages/chimerax/core/toolshed/__init__.py", line 548, in install_bundle  
results = self._pip_install(bundle, per_user=per_user, reinstall=reinstall)  
File "/opt/UCSF/ChimeraX/lib/python3.6/site-
packages/chimerax/core/toolshed/__init__.py", line 845, in _pip_install  
results = self._run_pip(command)  
File "/opt/UCSF/ChimeraX/lib/python3.6/site-
packages/chimerax/core/toolshed/__init__.py", line 863, in _run_pip  
output = cp.stdout.decode("utf-8")  
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xa0 in position 44:
invalid start byte  
  
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xa0 in position 44:
invalid start byte  
  
File "/opt/UCSF/ChimeraX/lib/python3.6/site-
packages/chimerax/core/toolshed/__init__.py", line 863, in _run_pip  
output = cp.stdout.decode("utf-8")  
  
See log for complete Python traceback.  
  

QXcbConnection: XCB error: 3 (BadWindow), sequence: 2793, resource id:
31463279, major code: 40 (TranslateCoords), minor code: 0  




OpenGL version: 3.3.0 NVIDIA 390.48
OpenGL renderer: GeForce GTX 1050 Ti/PCIe/SSE2
OpenGL vendor: NVIDIA Corporation

Change History (7)

comment:1 by Tristan Croll, 7 years ago

Cc: Tristan Croll added
Platform: all
Project: ChimeraX

(Copying a reply from Conrad on another report regarding the UnicodeDecodeError)


The decoding error is fixed in 0.9 by fd27a417a.

Unfortunately, since 0.9 uses Python 3.7 and ISOLDE is only compatible with 0.8, this fix does not help right now with ISOLDE installation. Would it be possible for you to edit a ChimeraX Python file so that we can get a look at the error? The file is in ChimeraX.app/bin/Lib/site-packages/chimerax/core/toolshed/__init__.py and the change is to replace lines 923-924:

    output = cp.stdout.decode("utf-8")
    error = cp.stderr.decode("utf-8")

with:

    output = cp.stdout.decode("utf-8", "backslashreplace")
    error = cp.stderr.decode("utf-8", "backslashreplace")

In your case, the file to modify would be in /opt/UCSF/ChimeraX/lib/python3.6/site-packages/chimerax/core/toolshed/__init__.py. It would be really helpful if you could make that edit and report back, so we can see what the underlying problem is.

comment:2 by Tristan Croll, 7 years ago

Ack! I think I just discovered the underlying problem for myself. It would appear that when building on my Fedora machine, even when I build in devtoolset-3 it uses the wrong libstdc++ version... sorry - will get corrected builds up asap.

Traceback (most recent call last):
  File "/opt/UCSF/ChimeraX/lib/python3.6/site-packages/chimerax/cmd_line/tool.py", line 229, in execute
    cmd.run(cmd_text)
  File "/opt/UCSF/ChimeraX/lib/python3.6/site-packages/chimerax/core/commands/cli.py", line 2587, in run
    result = ci.function(session, **kw_args)
  File "/home/tic20/.local/share/ChimeraX/0.8/site-packages/chimerax/isolde/cmd.py", line 25, in isolde_start
    get_singleton(session)
  File "/home/tic20/.local/share/ChimeraX/0.8/site-packages/chimerax/isolde/cmd.py", line 16, in get_singleton
    return tools.get_singleton(session, ISOLDE_ToolUI, 'ISOLDE', create=create)
  File "/opt/UCSF/ChimeraX/lib/python3.6/site-packages/chimerax/core/tools.py", line 214, in get_singleton
    tinst = tool_class(session, tool_name, **kw)
  File "/home/tic20/.local/share/ChimeraX/0.8/site-packages/chimerax/isolde/tool.py", line 158, in __init__
    from . import isolde
  File "/home/tic20/.local/share/ChimeraX/0.8/site-packages/chimerax/isolde/isolde.py", line 37, in <module>
    from chimerax import clipper
  File "/home/tic20/.local/share/ChimeraX/0.8/site-packages/chimerax/clipper/__init__.py", line 13, in <module>
    from .clipper_python import (
ImportError: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /home/tic20/.local/share/ChimeraX/0.8/site-packages/chimerax/clipper/clipper_python.cpython-36m-x86_64-linux-gnu.so)

ImportError: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /home/tic20/.local/share/ChimeraX/0.8/site-packages/chimerax/clipper/clipper_python.cpython-36m-x86_64-linux-gnu.so)

comment:3 by Tristan Croll, 7 years ago

... but only for Clipper, which is a little odd. I built the ISOLDE release on the same machine at the same time using the same devtoolset-3 terminal window, and yet once I replace the Clipper build it works just fine on my CentOS machine.

comment:4 by Tristan Croll, 7 years ago

In any case, I've just uploaded a new build of Clipper. Would you mind doing the following for me?

cd ~/.local/share/ChimeraX
rm -fr 0.8
cd ~/.cache/ChimeraX
rm -fr 0.8

... and then try reinstalling ISOLDE from the Tool Shed?

in reply to:  5 ; comment:5 by n.keep@…, 7 years ago

Thanks . rm and reinstall  ISOLDE seems to fix it

Nick

comment:6 by pett, 7 years ago

Cc: Conrad Huang added; Tristan Croll removed
Component: UnassignedThird Party
Owner: set to Tristan Croll
Status: newassigned
Summary: ChimeraX bug report submissionISOLDE installation: UnicodeDecodeError

comment:7 by pett, 7 years ago

Resolution: fixed
Status: assignedclosed
Note: See TracTickets for help on using tickets.