Opened 3 years ago

Last modified 3 years ago

#7914 assigned defect

Document Linux compilation system prerequisites such as sqlite to get a working ChimeraX shell tool

Reported by: goddard@… Owned by: Greg Couch
Priority: normal Milestone:
Component: Build System Version:
Keywords: Cc: Zach Pearson
Blocked By: Blocking:
Notify when closed: Platform: all
Project: ChimeraX

Description

The following bug report has been submitted:
Platform:        Linux-5.4.0-120-generic-x86_64-with-glibc2.31
ChimeraX Version: 1.6.dev202210281747 (2022-10-28 17:47:30 UTC)
Description
Compiled today's ChimeraX devel source code on Ubuntu 20.04 machine and shell does not work.  Fails to import _sqlite3.

Log:
UCSF ChimeraX version: 1.6.dev202210281747 (2022-10-28)  
© 2016-2022 Regents of the University of California. All rights reserved.  
How to cite UCSF ChimeraX  

> open 1mtx format mmcif fromDatabase pdb

1mtx title:  
Determination of the three-dimensional structure of margatoxin by 1H, 13C, 15N
triple-resonance nuclear magnetic resonance spectroscopy [more info...]  
  
Chain information for 1mtx  
---  
Chain | Description | UniProt  
1.1/A 1.2/A 1.3/A 1.4/A 1.5/A 1.6/A 1.7/A 1.8/A 1.9/A 1.10/A 1.11/A 1.12/A
1.13/A 1.14/A 1.15/A 1.16/A 1.17/A 1.18/A 1.19/A 1.20/A 1.21/A 1.22/A 1.23/A |
MARGATOXIN | SCKM_CENMA  
  

> close #1.2-30

> show atoms

> hide cartoons

> ui mousemode right tug

Traceback (most recent call last):  
File "/home/goddard/ucsf/chimerax/ChimeraX.app/lib/python3.9/site-
packages/openmm/openmm.py", line 14, in swig_import_helper  
return importlib.import_module(mname)  
File
"/home/goddard/ucsf/chimerax/ChimeraX.app/lib/python3.9/importlib/__init__.py",
line 127, in import_module  
return _bootstrap._gcd_import(name[level:], package, level)  
File "<frozen importlib._bootstrap>", line 1030, in _gcd_import  
File "<frozen importlib._bootstrap>", line 1007, in _find_and_load  
File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked  
File "<frozen importlib._bootstrap>", line 666, in _load_unlocked  
File "<frozen importlib._bootstrap>", line 565, in module_from_spec  
File "<frozen importlib._bootstrap_external>", line 1173, in create_module  
File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed  
ImportError: libOpenMM.so.7.7: cannot open shared object file: No such file or
directory  
  
During handling of the above exception, another exception occurred:  
  
Traceback (most recent call last):  
File "/home/goddard/ucsf/chimerax/ChimeraX.app/lib/python3.9/site-
packages/chimerax/mouse_modes/mousemodes.py", line 637, in <lambda>  
gw.mousePressEvent = lambda e, s=self: s._dispatch_mouse_event(e,
"mouse_down")  
File "/home/goddard/ucsf/chimerax/ChimeraX.app/lib/python3.9/site-
packages/chimerax/mouse_modes/mousemodes.py", line 537, in
_dispatch_mouse_event  
f(MouseEvent(event, modifiers=modifiers))  
File "/home/goddard/ucsf/chimerax/ChimeraX.app/lib/python3.9/site-
packages/chimerax/tug/tugatoms.py", line 77, in mouse_down  
self._pick_atom(pick)  
File "/home/goddard/ucsf/chimerax/ChimeraX.app/lib/python3.9/site-
packages/chimerax/tug/tugatoms.py", line 86, in _pick_atom  
self._tugger = st = StructureTugger(a.structure)  
File "/home/goddard/ucsf/chimerax/ChimeraX.app/lib/python3.9/site-
packages/chimerax/tug/tugatoms.py", line 231, in __init__  
from openmm import unit  
File "/home/goddard/ucsf/chimerax/ChimeraX.app/lib/python3.9/site-
packages/openmm/__init__.py", line 19, in <module>  
from openmm.openmm import *  
File "/home/goddard/ucsf/chimerax/ChimeraX.app/lib/python3.9/site-
packages/openmm/openmm.py", line 17, in <module>  
_openmm = swig_import_helper()  
File "/home/goddard/ucsf/chimerax/ChimeraX.app/lib/python3.9/site-
packages/openmm/openmm.py", line 16, in swig_import_helper  
return importlib.import_module('_openmm')  
File
"/home/goddard/ucsf/chimerax/ChimeraX.app/lib/python3.9/importlib/__init__.py",
line 127, in import_module  
return _bootstrap._gcd_import(name[level:], package, level)  
ModuleNotFoundError: No module named '_openmm'  
  
ModuleNotFoundError: No module named '_openmm'  
  
File
"/home/goddard/ucsf/chimerax/ChimeraX.app/lib/python3.9/importlib/__init__.py",
line 127, in import_module  
return _bootstrap._gcd_import(name[level:], package, level)  
  
See log for complete Python traceback.  
  

> ui tool show Shell

Traceback (most recent call last):  
File "/home/goddard/ucsf/chimerax/ChimeraX.app/lib/python3.9/site-
packages/chimerax/core/toolshed/info.py", line 560, in start_tool  
ti = api._api_caller.start_tool(api, session, self, tool_info)  
File "/home/goddard/ucsf/chimerax/ChimeraX.app/lib/python3.9/site-
packages/chimerax/core/toolshed/__init__.py", line 1269, in start_tool  
return cls._get_func(api, "start_tool")(session, ti.name)  
File "/home/goddard/ucsf/chimerax/ChimeraX.app/lib/python3.9/site-
packages/chimerax/shell/__init__.py", line 21, in start_tool  
return ShellUI(session, tool_name)  
File "/home/goddard/ucsf/chimerax/ChimeraX.app/lib/python3.9/site-
packages/chimerax/shell/tool.py", line 36, in __init__  
from ipykernel.ipkernel import IPythonKernel  
File "/home/goddard/ucsf/chimerax/ChimeraX.app/lib/python3.9/site-
packages/ipykernel/ipkernel.py", line 12, in <module>  
from IPython.core import release  
File "/home/goddard/ucsf/chimerax/ChimeraX.app/lib/python3.9/site-
packages/IPython/__init__.py", line 53, in <module>  
from .terminal.embed import embed  
File "/home/goddard/ucsf/chimerax/ChimeraX.app/lib/python3.9/site-
packages/IPython/terminal/embed.py", line 15, in <module>  
from IPython.core.interactiveshell import DummyMod, InteractiveShell  
File "/home/goddard/ucsf/chimerax/ChimeraX.app/lib/python3.9/site-
packages/IPython/core/interactiveshell.py", line 74, in <module>  
from IPython.core.history import HistoryManager  
File "/home/goddard/ucsf/chimerax/ChimeraX.app/lib/python3.9/site-
packages/IPython/core/history.py", line 11, in <module>  
import sqlite3  
File
"/home/goddard/ucsf/chimerax/ChimeraX.app/lib/python3.9/sqlite3/__init__.py",
line 57, in <module>  
from sqlite3.dbapi2 import *  
File
"/home/goddard/ucsf/chimerax/ChimeraX.app/lib/python3.9/sqlite3/dbapi2.py",
line 27, in <module>  
from _sqlite3 import *  
ModuleNotFoundError: No module named '_sqlite3'  
  
During handling of the above exception, another exception occurred:  
  
Traceback (most recent call last):  
File "/home/goddard/ucsf/chimerax/ChimeraX.app/lib/python3.9/site-
packages/chimerax/ui/gui.py", line 1653, in <lambda>  
run(ses, "ui tool show %s" % StringArg.unparse(tool_name)))  
File "/home/goddard/ucsf/chimerax/ChimeraX.app/lib/python3.9/site-
packages/chimerax/core/commands/run.py", line 38, in run  
results = command.run(text, log=log, return_json=return_json)  
File "/home/goddard/ucsf/chimerax/ChimeraX.app/lib/python3.9/site-
packages/chimerax/core/commands/cli.py", line 2897, in run  
result = ci.function(session, **kw_args)  
File "/home/goddard/ucsf/chimerax/ChimeraX.app/lib/python3.9/site-
packages/chimerax/ui/cmd.py", line 219, in ui_tool_show  
bi.start_tool(session, name)  
File "/home/goddard/ucsf/chimerax/ChimeraX.app/lib/python3.9/site-
packages/chimerax/core/toolshed/info.py", line 567, in start_tool  
raise ToolshedError(  
chimerax.core.toolshed.ToolshedError: start_tool() failed for tool Shell in
bundle ChimeraX-Shell:  
No module named '_sqlite3'  
  
chimerax.core.toolshed.ToolshedError: start_tool() failed for tool Shell in
bundle ChimeraX-Shell:  
No module named '_sqlite3'  
  
File "/home/goddard/ucsf/chimerax/ChimeraX.app/lib/python3.9/site-
packages/chimerax/core/toolshed/info.py", line 567, in start_tool  
raise ToolshedError(  
  
See log for complete Python traceback.  
  




OpenGL version: 4.6 (Core Profile) Mesa 21.2.6
OpenGL renderer: Mesa Intel(R) HD Graphics 6000 (BDW GT3)
OpenGL vendor: Intel

Python: 3.9.11
Locale: en_US.UTF-8
Qt version: PyQt6 6.3.1, Qt 6.3.1
Qt runtime version: 6.3.2
Qt platform: xcb

XDG_SESSION_TYPE=x11
DESKTOP_SESSION=ubuntu
XDG_SESSION_DESKTOP=ubuntu
XDG_CURRENT_DESKTOP=ubuntu:GNOME
DISPLAY=:0
Manufacturer: unknown
Model: unknown
OS: Ubuntu 20.04 Focal Fossa
Architecture: 64bit ELF
Virtual Machine: none
CPU: 4 Intel(R) Core(TM) i5-5250U CPU @ 1.60GHz
Cache Size: 3072 KB
Memory:
	              total        used        free      shared  buff/cache   available
	Mem:           15Gi       1.2Gi       402Mi       330Mi        13Gi        13Gi
	Swap:         2.0Gi       2.0Mi       2.0Gi

Graphics:
	00:02.0 VGA compatible controller [0300]: Intel Corporation HD Graphics 6000 [8086:1626] (rev 09)	
	Subsystem: Intel Corporation HD Graphics 6000 [8086:2057]	
	Kernel driver in use: i915

Installed Packages:
    alabaster: 0.7.12
    appdirs: 1.4.4
    asttokens: 2.0.8
    Babel: 2.10.3
    backcall: 0.2.0
    blockdiag: 3.0.0
    build: 0.8.0
    certifi: 2022.9.24
    cftime: 1.6.2
    charset-normalizer: 2.1.1
    ChimeraX-AddCharge: 1.4
    ChimeraX-AddH: 2.2.1
    ChimeraX-AlignmentAlgorithms: 2.0
    ChimeraX-AlignmentHdrs: 3.3
    ChimeraX-AlignmentMatrices: 2.1
    ChimeraX-Alignments: 2.8
    ChimeraX-AlphaFold: 1.0
    ChimeraX-AltlocExplorer: 1.0.3
    ChimeraX-AmberInfo: 1.0
    ChimeraX-Arrays: 1.0
    ChimeraX-Atomic: 1.43.3
    ChimeraX-AtomicLibrary: 8.0.3
    ChimeraX-AtomSearch: 2.0.1
    ChimeraX-AxesPlanes: 2.3
    ChimeraX-BasicActions: 1.1.2
    ChimeraX-BILD: 1.0
    ChimeraX-BlastProtein: 2.1.2
    ChimeraX-BondRot: 2.0.1
    ChimeraX-BugReporter: 1.0.1
    ChimeraX-BuildStructure: 2.7.1
    ChimeraX-Bumps: 1.0
    ChimeraX-BundleBuilder: 1.2
    ChimeraX-ButtonPanel: 1.0.1
    ChimeraX-CageBuilder: 1.0.1
    ChimeraX-CellPack: 1.0
    ChimeraX-Centroids: 1.3.1
    ChimeraX-ChangeChains: 1.0.2
    ChimeraX-CheckWaters: 1.3
    ChimeraX-ChemGroup: 2.0
    ChimeraX-Clashes: 2.2.4
    ChimeraX-ColorActions: 1.0.3
    ChimeraX-ColorGlobe: 1.0
    ChimeraX-ColorKey: 1.5.2
    ChimeraX-CommandLine: 1.2.5
    ChimeraX-ConnectStructure: 2.0.1
    ChimeraX-Contacts: 1.0.1
    ChimeraX-Core: 1.6.dev202210281747
    ChimeraX-CoreFormats: 1.1
    ChimeraX-coulombic: 1.3.2
    ChimeraX-Crosslinks: 1.0
    ChimeraX-Crystal: 1.0
    ChimeraX-CrystalContacts: 1.0.1
    ChimeraX-DataFormats: 1.2.2
    ChimeraX-Dicom: 1.1
    ChimeraX-DistMonitor: 1.3
    ChimeraX-DockPrep: 1.0
    ChimeraX-Dssp: 2.0
    ChimeraX-EMDB-SFF: 1.0
    ChimeraX-ExperimentalCommands: 1.0
    ChimeraX-FileHistory: 1.0.1
    ChimeraX-FunctionKey: 1.0.1
    ChimeraX-Geometry: 1.2
    ChimeraX-gltf: 1.0
    ChimeraX-Graphics: 1.1
    ChimeraX-Hbonds: 2.4
    ChimeraX-Help: 1.2.1
    ChimeraX-HKCage: 1.3
    ChimeraX-IHM: 1.1
    ChimeraX-ImageFormats: 1.2
    ChimeraX-IMOD: 1.0
    ChimeraX-IO: 1.0.1
    ChimeraX-ItemsInspection: 1.0.1
    ChimeraX-Label: 1.1.7
    ChimeraX-LinuxSupport: 1.0.1
    ChimeraX-ListInfo: 1.1.1
    ChimeraX-Log: 1.1.5
    ChimeraX-LookingGlass: 1.1
    ChimeraX-Maestro: 1.8.2
    ChimeraX-Map: 1.1.2
    ChimeraX-MapData: 2.0
    ChimeraX-MapEraser: 1.0.1
    ChimeraX-MapFilter: 2.0
    ChimeraX-MapFit: 2.0
    ChimeraX-MapSeries: 2.1.1
    ChimeraX-Markers: 1.0.1
    ChimeraX-Mask: 1.0.1
    ChimeraX-MatchMaker: 2.0.9
    ChimeraX-MDcrds: 2.6
    ChimeraX-MedicalToolbar: 1.0.2
    ChimeraX-Meeting: 1.0.1
    ChimeraX-MLP: 1.1
    ChimeraX-mmCIF: 2.8
    ChimeraX-MMTF: 2.2
    ChimeraX-Modeller: 1.5.6
    ChimeraX-ModelPanel: 1.3.6
    ChimeraX-ModelSeries: 1.0.1
    ChimeraX-Mol2: 2.0
    ChimeraX-Mole: 1.0
    ChimeraX-Morph: 1.0.1
    ChimeraX-MouseModes: 1.1.1
    ChimeraX-Movie: 1.0
    ChimeraX-Neuron: 1.0
    ChimeraX-Nucleotides: 2.0.3
    ChimeraX-OpenCommand: 1.9.1
    ChimeraX-PDB: 2.6.8
    ChimeraX-PDBBio: 1.0
    ChimeraX-PDBLibrary: 1.0.2
    ChimeraX-PDBMatrices: 1.0
    ChimeraX-PickBlobs: 1.0.1
    ChimeraX-Positions: 1.0
    ChimeraX-PresetMgr: 1.1
    ChimeraX-PubChem: 2.1
    ChimeraX-ReadPbonds: 1.0.1
    ChimeraX-Registration: 1.1.1
    ChimeraX-RemoteControl: 1.0
    ChimeraX-RenderByAttr: 1.0
    ChimeraX-RenumberResidues: 1.1
    ChimeraX-ResidueFit: 1.0.1
    ChimeraX-RestServer: 1.1
    ChimeraX-RNALayout: 1.0
    ChimeraX-RotamerLibMgr: 2.0.1
    ChimeraX-RotamerLibsDunbrack: 2.0
    ChimeraX-RotamerLibsDynameomics: 2.0
    ChimeraX-RotamerLibsRichardson: 2.0
    ChimeraX-SaveCommand: 1.5.1
    ChimeraX-SchemeMgr: 1.0
    ChimeraX-SDF: 2.0
    ChimeraX-Segger: 1.0
    ChimeraX-Segment: 1.0
    ChimeraX-SelInspector: 1.0
    ChimeraX-SeqView: 2.8
    ChimeraX-Shape: 1.0.1
    ChimeraX-Shell: 1.0.1
    ChimeraX-Shortcuts: 1.1.1
    ChimeraX-ShowSequences: 1.0.1
    ChimeraX-SideView: 1.0.1
    ChimeraX-Smiles: 2.1
    ChimeraX-SmoothLines: 1.0
    ChimeraX-SpaceNavigator: 1.0
    ChimeraX-StdCommands: 1.10
    ChimeraX-STL: 1.0
    ChimeraX-Storm: 1.0
    ChimeraX-StructMeasure: 1.1
    ChimeraX-Struts: 1.0.1
    ChimeraX-Surface: 1.0
    ChimeraX-SwapAA: 2.0.1
    ChimeraX-SwapRes: 2.1.3
    ChimeraX-TapeMeasure: 1.0
    ChimeraX-Test: 1.0
    ChimeraX-Toolbar: 1.1.2
    ChimeraX-ToolshedUtils: 1.2.1
    ChimeraX-Tug: 1.0.1
    ChimeraX-UI: 1.25.1
    ChimeraX-uniprot: 2.2.1
    ChimeraX-UnitCell: 1.0.1
    ChimeraX-ViewDockX: 1.1.4
    ChimeraX-VIPERdb: 1.0
    ChimeraX-Vive: 1.1
    ChimeraX-VolumeMenu: 1.0.1
    ChimeraX-VTK: 1.0
    ChimeraX-WavefrontOBJ: 1.0
    ChimeraX-WebCam: 1.0.1
    ChimeraX-WebServices: 1.1.0
    ChimeraX-Zone: 1.0.1
    colorama: 0.4.5
    cxservices: 1.2
    cycler: 0.11.0
    Cython: 0.29.32
    debugpy: 1.6.3
    decorator: 5.1.1
    distro: 1.7.0
    docutils: 0.19
    entrypoints: 0.4
    executing: 1.1.1
    filelock: 3.7.1
    fonttools: 4.38.0
    funcparserlib: 1.0.0
    grako: 3.16.5
    h5py: 3.7.0
    html2text: 2020.1.16
    idna: 3.4
    ihm: 0.33
    imagecodecs: 2022.7.31
    imagesize: 1.4.1
    importlib-metadata: 5.0.0
    ipykernel: 6.15.3
    ipython: 8.4.0
    ipython-genutils: 0.2.0
    jedi: 0.18.1
    Jinja2: 3.1.2
    jupyter-client: 7.3.4
    jupyter-core: 4.11.2
    kiwisolver: 1.4.4
    line-profiler: 3.5.1
    lxml: 4.9.1
    lz4: 4.0.2
    MarkupSafe: 2.1.1
    matplotlib: 3.5.2
    matplotlib-inline: 0.1.6
    msgpack: 1.0.4
    nest-asyncio: 1.5.6
    netCDF4: 1.6.0
    networkx: 2.8.5
    numexpr: 2.8.4
    numpy: 1.23.1
    openvr: 1.23.701
    packaging: 21.3
    ParmEd: 3.4.3
    parso: 0.8.3
    pep517: 0.13.0
    pexpect: 4.8.0
    pickleshare: 0.7.5
    Pillow: 9.2.0
    pip: 22.2.2
    pkginfo: 1.8.3
    prompt-toolkit: 3.0.31
    psutil: 5.9.1
    ptyprocess: 0.7.0
    pure-eval: 0.2.2
    pycollada: 0.7.2
    pydicom: 2.3.0
    Pygments: 2.12.0
    PyOpenGL: 3.1.5
    PyOpenGL-accelerate: 3.1.5
    pyparsing: 3.0.9
    PyQt6: 6.3.1
    PyQt6-Qt6: 6.3.2
    PyQt6-sip: 13.4.0
    PyQt6-WebEngine: 6.3.1
    PyQt6-WebEngine-Qt6: 6.3.2
    python-dateutil: 2.8.2
    pytz: 2022.5
    pyzmq: 24.0.1
    qtconsole: 5.3.1
    QtPy: 2.2.1
    RandomWords: 0.4.0
    requests: 2.28.1
    scipy: 1.9.0
    setuptools: 65.1.1
    sfftk-rw: 0.7.2
    six: 1.16.0
    snowballstemmer: 2.2.0
    sortedcontainers: 2.4.0
    Sphinx: 5.1.1
    sphinx-autodoc-typehints: 1.19.1
    sphinxcontrib-applehelp: 1.0.2
    sphinxcontrib-blockdiag: 3.0.0
    sphinxcontrib-devhelp: 1.0.2
    sphinxcontrib-htmlhelp: 2.0.0
    sphinxcontrib-jsmath: 1.0.1
    sphinxcontrib-qthelp: 1.0.3
    sphinxcontrib-serializinghtml: 1.1.5
    stack-data: 0.5.1
    tables: 3.7.0
    tifffile: 2022.7.31
    tinyarray: 1.2.4
    tomli: 2.0.1
    tornado: 6.2
    traitlets: 5.3.0
    urllib3: 1.26.12
    wcwidth: 0.2.5
    webcolors: 1.12
    wheel: 0.37.1
    wheel-filename: 1.4.1
    zipp: 3.10.0

Change History (4)

comment:1 by Tom Goddard, 3 years ago

Cc: Zach Pearson added
Component: UnassignedBuild System
Owner: set to Greg Couch
Platform: all
Project: ChimeraX
Status: newassigned
Summary: ChimeraX bug report submissionShell does not work in Ubuntu 20.04 on development machine

Maybe my build machine is missing some library so sqlite does not get built? I'll check the build output.

comment:2 by Tom Goddard, 3 years ago

Note, this problem is not in the release candidate and probably not in the daily build. It is in a build from scratch done on my home Ubuntu 20.04 machine. The build completed successfully.

comment:3 by Tom Goddard, 3 years ago

The build from scratch output shows that it builds Python and indeed did not find what it needed to build sqlite.

Python build finished successfully!
The necessary bits to build these optional modules were not found:
_dbm                  _gdbm                 _sqlite3           
_tkinter              readline                                 

comment:4 by Tom Goddard, 3 years ago

Summary: Shell does not work in Ubuntu 20.04 on development machineDocument Linux compilation system prerequisites such as sqlite to get a working ChimeraX shell tool

The ChimeraX programming manual does not mention what prerequisites are needed to be installed by hand to get a fully working ChimeraX, such as the need for installing some sqlite library for the shell to work.

The programming manual should be updated to mention what is needed (at least mention sqlite and we can add more as we discover other system prereqs).

https://www.cgl.ucsf.edu/chimerax/docs/devel/building.html

Then this ticket can be closed.

Note: See TracTickets for help on using tickets.