On Fedora 31, I tried to install mayavi with pip
pip install mayavi
However, the following error occurs
Building wheel for mayavi (setup.py) ... error
ERROR: Command errored out with exit status -11:
command: /usr/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-4s7scony/mayavi/setup.py'"'"'; __file__='"'"'/tmp/pip-install-4s7scony/mayavi/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-ggg3s_hz
cwd: /tmp/pip-install-4s7scony/mayavi/
Complete output (55 lines):
running bdist_wheel
running build
----------------------------------------------------------------------
Building TVTK classes... vtkContextDevice2D: Ignoring method: Get/SetViewportRect
default: [0, 0, 0, 0], range: None
vtkContextDevice2D: Ignoring method: Get/SetViewportSize
default: [0, 0], range: None
vtkEventDataForDevice: Ignoring method: Get/SetAction
default: -1, range: None
vtkEventDataForDevice: Ignoring method: Get/SetDevice
default: -1, range: None
vtkFXAAOptions: Ignoring method: Get/SetDebugOptionValue
default: 0, range: None
vtkIncrementalForceLayout: Ignoring method: Get/SetGravityPoint
default: [200.0, 200.0], range: None
vtkOpenGLBufferObject: Ignoring method: Get/SetType
default: 0, range: None
vtkOpenGLFXAAFilter: Ignoring method: Get/SetDebugOptionValue
default: 0, range: None
vtkRenderWidget: Ignoring method: Get/SetPosition
default: [0, 0], range: None
vtkRenderWidget: Ignoring method: Get/SetSize
default: [300, 300], range: None
vtkShader: Ignoring method: Get/SetType
default: 3, range: None
vtkVolumeTexture: Ignoring method: Get/SetPartitions
default: [1, 1, 1], range: None
vtkChartMatrix: Ignoring method: Get/SetGutter
default: [15.0, 15.0], range: None
vtkChartMatrix: Ignoring method: Get/SetSize
default: [0, 0], range: None
vtkContextArea: Ignoring method: Get/SetDrawAreaBounds
default: [0.0, 0.0, 300.0, 300.0], range: None
vtkContextArea: Ignoring method: Get/SetDrawAreaResizeBehavior
default: 0, range: None
vtkContextArea: Ignoring method: Get/SetFixedMargins
default: [0, 0, 0, 0], range: None
vtkContextArea: Ignoring method: Get/SetFixedRect
default: [0, 0, 300, 300], range: None
vtkContextArea: Ignoring method: Get/SetGeometry
default: [0, 0, 300, 300], range: None
vtkImplicitProjectOnPlaneDistance: Ignoring method: Get/SetNorm
default: 2, range: None
vtkOpenGLVertexBufferObject: Ignoring method: Get/SetCoordShiftAndScaleMethod
default: 0, range: None
vtkSimple3DCirclesStrategy: Ignoring method: Get/SetMarkedValue
default: (invalid), range: None
vtkArrayNorm: Ignoring method: Get/SetWindow
default: [0, 9223372036854775807), range: None
vtkChart: Ignoring method: Get/SetSize
default: [0.0, 0.0, 0.0, 0.0], range: None
vtkChartXYZ: Ignoring method: Get/SetAxisColor
default: [0, 0, 0, 255], range: None
Warning: We cannot determine the trait type of vtkHigherOrderHexahedron.Order
Warning: We cannot determine the trait type of vtkHigherOrderQuadrilateral.Order
----------------------------------------
ERROR: Failed building wheel for mayavi
Running setup.py clean for mayavi
Failed to build mayavi
Installing collected packages: mayavi
Running setup.py install for mayavi ... error
ERROR: Command errored out with exit status -11:
command: /usr/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-4s7scony/mayavi/setup.py'"'"'; __file__='"'"'/tmp/pip-install-4s7scony/mayavi/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-wln7h1zu/install-record.txt --single-version-externally-managed --user --prefix= --compile --install-headers /home/imsantos/.local/include/python3.7m/mayavi
cwd: /tmp/pip-install-4s7scony/mayavi/
Complete output (55 lines):
running install
running build
----------------------------------------------------------------------
Building TVTK classes... vtkContextDevice2D: Ignoring method: Get/SetViewportRect
default: [0, 0, 0, 0], range: None
vtkContextDevice2D: Ignoring method: Get/SetViewportSize
default: [0, 0], range: None
vtkEventDataForDevice: Ignoring method: Get/SetAction
default: -1, range: None
vtkEventDataForDevice: Ignoring method: Get/SetDevice
default: -1, range: None
vtkFXAAOptions: Ignoring method: Get/SetDebugOptionValue
default: 0, range: None
vtkIncrementalForceLayout: Ignoring method: Get/SetGravityPoint
default: [200.0, 200.0], range: None
vtkOpenGLBufferObject: Ignoring method: Get/SetType
default: 0, range: None
vtkOpenGLFXAAFilter: Ignoring method: Get/SetDebugOptionValue
default: 0, range: None
vtkRenderWidget: Ignoring method: Get/SetPosition
default: [0, 0], range: None
vtkRenderWidget: Ignoring method: Get/SetSize
default: [300, 300], range: None
vtkShader: Ignoring method: Get/SetType
default: 3, range: None
vtkVolumeTexture: Ignoring method: Get/SetPartitions
default: [1, 1, 1], range: None
vtkChartMatrix: Ignoring method: Get/SetGutter
default: [15.0, 15.0], range: None
vtkChartMatrix: Ignoring method: Get/SetSize
default: [0, 0], range: None
vtkContextArea: Ignoring method: Get/SetDrawAreaBounds
default: [0.0, 0.0, 300.0, 300.0], range: None
vtkContextArea: Ignoring method: Get/SetDrawAreaResizeBehavior
default: 0, range: None
vtkContextArea: Ignoring method: Get/SetFixedMargins
default: [0, 0, 0, 0], range: None
vtkContextArea: Ignoring method: Get/SetFixedRect
default: [0, 0, 300, 300], range: None
vtkContextArea: Ignoring method: Get/SetGeometry
default: [0, 0, 300, 300], range: None
vtkImplicitProjectOnPlaneDistance: Ignoring method: Get/SetNorm
default: 2, range: None
vtkOpenGLVertexBufferObject: Ignoring method: Get/SetCoordShiftAndScaleMethod
default: 0, range: None
vtkSimple3DCirclesStrategy: Ignoring method: Get/SetMarkedValue
default: (invalid), range: None
vtkArrayNorm: Ignoring method: Get/SetWindow
default: [0, 9223372036854775807), range: None
vtkChart: Ignoring method: Get/SetSize
default: [0.0, 0.0, 0.0, 0.0], range: None
vtkChartXYZ: Ignoring method: Get/SetAxisColor
default: [0, 0, 0, 255], range: None
Warning: We cannot determine the trait type of vtkHigherOrderHexahedron.Order
Warning: We cannot determine the trait type of vtkHigherOrderQuadrilateral.Order
----------------------------------------
ERROR: Command errored out with exit status -11: /usr/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-4s7scony/mayavi/setup.py'"'"'; __file__='"'"'/tmp/pip-install-4s7scony/mayavi/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-wln7h1zu/install-record.txt --single-version-externally-managed --user --prefix= --compile --install-headers /home/imsantos/.local/include/python3.7m/mayavi Check the logs for full command output.
Doing python -c "import vtk"
doesn't raise an error. Same with PyQt5
.
Running
import vtk
vtk.VTK_SOURCE_VERSION
indicates that I'm using vtk version 9.0.1.
$PYTHONPATH
is empty.
Running as sudo doesn't change the error. I also tried python3 -m pip install mayavi
with the same result.
How can I install mayavi with pip?
The issue is the version of vtk that you are using. I had the same issue and the follwing worked for me:
pip3 install vtk==8.1.2
Note that this version of vtk is not available for version 3.8 and above of Python, so I'm not sure what the workaround is if you're using 3.8. I was using 3.7.
Then, try installing mayavi again.
pip3 install mayavi