Skip to content

DOC: install instructions should mention OpenGL #7821

@drammock

Description

@drammock

On a new system running xubuntu 20.04, with a fresh install of conda, I get this when following our standard install instructions (curl env file followed by conda env update --file environment.yml). The only thing I did differently was to change in the environment file the line name: base to name: mne.

Summary of the problem:

  • pip fails to build wheel for mayavi
  • pip runs setup.py for mayavi, which fails with "no module named vtk"
  • vtk fails to install because it can't find OpenGL? ImportError: libOpenGL.so.0: cannot open shared object file: No such file or directory

Relevant part of traceback:

[... a bunch of normal  output omitted...]

Building wheels for collected packages: numpydoc, mayavi
  Building wheel for numpydoc (setup.py): started
  Building wheel for numpydoc (setup.py): finished with status 'done'
  Created wheel for numpydoc: filename=numpydoc-1.0.0.dev0-py3-none-any.whl size=47489 sha256=222954e55166d0679190b7daef71accb0ec7f525882fe36c20be228c307922f5
  Stored in directory: /tmp/pip-ephem-wheel-cache-gsthnxo1/wheels/38/db/74/ae8b461756e385e9f099d8a4af23510a2c92b3001f1503ab39
  Building wheel for mayavi (setup.py): started
  Building wheel for mayavi (setup.py): finished with status 'error'
  Running setup.py clean for mayavi
Successfully built numpydoc
Failed to build mayavi
Installing collected packages: mne, imageio-ffmpeg, vtk, scooby, appdirs, meshio, pyvista, nibabel, configobj, apptools, envisage, mayavi, PySurfer, dipy, sklearn, nilearn, quantities, neo, termcolor, pytest-sugar, snowballstemmer, pydocstyle, codespell, python-picard, tqdm, sphinxcontrib-serializinghtml, alabaster, babel, sphinxcontrib-devhelp, imagesize, sphinxcontrib-htmlhelp, urllib3, idna, chardet, requests, sphinxcontrib-jsmath, sphinxcontrib-applehelp, sphinxcontrib-qthelp, docutils, sphinx, numpydoc
    Running setup.py install for mayavi: started
    Running setup.py install for mayavi: finished with status 'error'

Pip subprocess error:
  ERROR: Command errored out with exit status 1:
   command: /opt/miniconda3/envs/mne/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-req-build-72s2xw_7/setup.py'"'"'; __file__='"'"'/tmp/pip-req-build-72s2xw_7/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-ktpbwzle
       cwd: /tmp/pip-req-build-72s2xw_7/
  Complete output (33 lines):
  running bdist_wheel
  running build
  Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "/tmp/pip-req-build-72s2xw_7/setup.py", line 411, in <module>
      setup(
    File "/opt/miniconda3/envs/mne/lib/python3.8/site-packages/numpy/distutils/core.py", line 171, in setup
      return old_setup(**new_attr)
    File "/opt/miniconda3/envs/mne/lib/python3.8/site-packages/setuptools/__init__.py", line 144, in setup
      return distutils.core.setup(**attrs)
    File "/opt/miniconda3/envs/mne/lib/python3.8/distutils/core.py", line 148, in setup
      dist.run_commands()
    File "/opt/miniconda3/envs/mne/lib/python3.8/distutils/dist.py", line 966, in run_commands
      self.run_command(cmd)
    File "/opt/miniconda3/envs/mne/lib/python3.8/distutils/dist.py", line 985, in run_command
      cmd_obj.run()
    File "/opt/miniconda3/envs/mne/lib/python3.8/site-packages/wheel/bdist_wheel.py", line 223, in run
      self.run_command('build')
    File "/opt/miniconda3/envs/mne/lib/python3.8/distutils/cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "/opt/miniconda3/envs/mne/lib/python3.8/distutils/dist.py", line 985, in run_command
      cmd_obj.run()
    File "/tmp/pip-req-build-72s2xw_7/setup.py", line 268, in run
      build_tvtk_classes_zip()
    File "/tmp/pip-req-build-72s2xw_7/setup.py", line 254, in build_tvtk_classes_zip
      gen_tvtk_classes_zip()
    File "tvtk/setup.py", line 83, in gen_tvtk_classes_zip
      from tvtk.code_gen import TVTKGenerator
    File "/tmp/pip-req-build-72s2xw_7/tvtk/code_gen.py", line 10, in <module>
      import vtk_module as vtk
    File "tvtk/vtk_module.py", line 15, in <module>
      from vtk import *
  ModuleNotFoundError: No module named 'vtk'
  ----------------------------------------
  ERROR: Failed building wheel for mayavi
    ERROR: Command errored out with exit status 1:
     command: /opt/miniconda3/envs/mne/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-req-build-72s2xw_7/setup.py'"'"'; __file__='"'"'/tmp/pip-req-build-72s2xw_7/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-jr9rwjeq/install-record.txt --single-version-externally-managed --compile --install-headers /opt/miniconda3/envs/mne/include/python3.8/mayavi
         cwd: /tmp/pip-req-build-72s2xw_7/
    Complete output (43 lines):
    running install
    running build
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-req-build-72s2xw_7/setup.py", line 411, in <module>
        setup(
      File "/opt/miniconda3/envs/mne/lib/python3.8/site-packages/numpy/distutils/core.py", line 171, in setup
        return old_setup(**new_attr)
      File "/opt/miniconda3/envs/mne/lib/python3.8/site-packages/setuptools/__init__.py", line 144, in setup
        return distutils.core.setup(**attrs)
      File "/opt/miniconda3/envs/mne/lib/python3.8/distutils/core.py", line 148, in setup
        dist.run_commands()
      File "/opt/miniconda3/envs/mne/lib/python3.8/distutils/dist.py", line 966, in run_commands
        self.run_command(cmd)
      File "/opt/miniconda3/envs/mne/lib/python3.8/distutils/dist.py", line 985, in run_command
        cmd_obj.run()
      File "/opt/miniconda3/envs/mne/lib/python3.8/site-packages/numpy/distutils/command/install.py", line 62, in run
        r = self.setuptools_run()
      File "/opt/miniconda3/envs/mne/lib/python3.8/site-packages/numpy/distutils/command/install.py", line 36, in setuptools_run
        return distutils_install.run(self)
      File "/opt/miniconda3/envs/mne/lib/python3.8/distutils/command/install.py", line 545, in run
        self.run_command('build')
      File "/opt/miniconda3/envs/mne/lib/python3.8/distutils/cmd.py", line 313, in run_command
        self.distribution.run_command(command)
      File "/opt/miniconda3/envs/mne/lib/python3.8/distutils/dist.py", line 985, in run_command
        cmd_obj.run()
      File "/tmp/pip-req-build-72s2xw_7/setup.py", line 268, in run
        build_tvtk_classes_zip()
      File "/tmp/pip-req-build-72s2xw_7/setup.py", line 254, in build_tvtk_classes_zip
        gen_tvtk_classes_zip()
      File "tvtk/setup.py", line 83, in gen_tvtk_classes_zip
        from tvtk.code_gen import TVTKGenerator
      File "/tmp/pip-req-build-72s2xw_7/tvtk/code_gen.py", line 10, in <module>
        import vtk_module as vtk
      File "tvtk/vtk_module.py", line 15, in <module>
        from vtk import *
      File "/opt/miniconda3/envs/mne/lib/python3.8/site-packages/vtk.py", line 30, in <module>
        all_m = importlib.import_module('vtkmodules.all')
      File "/opt/miniconda3/envs/mne/lib/python3.8/importlib/__init__.py", line 127, in import_module
        return _bootstrap._gcd_import(name[level:], package, level)
      File "/opt/miniconda3/envs/mne/lib/python3.8/site-packages/vtkmodules/all.py", line 29, in <module>
        from .vtkRenderingOpenGL2 import *
    ImportError: libOpenGL.so.0: cannot open shared object file: No such file or directory
    ----------------------------------------
ERROR: Command errored out with exit status 1: /opt/miniconda3/envs/mne/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-req-build-72s2xw_7/setup.py'"'"'; __file__='"'"'/tmp/pip-req-build-72s2xw_7/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-jr9rwjeq/install-record.txt --single-version-externally-managed --compile --install-headers /opt/miniconda3/envs/mne/include/python3.8/mayavi Check the logs for full command output.


CondaEnvException: Pip failed

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions