Mayavi: Problema de instalação do Mayavi no Mac OSX por meio do Homebrew e pip

Criado em 21 dez. 2016  ·  9Comentários  ·  Fonte: enthought/mayavi

Estou tentando instalar e usar mayavi no Mac OSX por meio de homebrew e pip. Instalei o python2, qt5, pyqt5 e vtk 7.1 através do homebrew e alterei o caminho para tornar o Homebrew python o padrão. Então, quando tento instalar o mayavi através do pip. Quando executo mayavi2 na linha de comando, recebo o seguinte erro. Não vejo TraitsBackendWx ou TraitsBackendQt em pip search . Como resolver esse erro?

Traceback (most recent call last):
  File "/usr/local/bin/mayavi2", line 11, in <module>
    sys.exit(main())
  File "/usr/local/lib/python2.7/site-packages/mayavi/scripts/mayavi2.py", line 647, in main
    '''
ImportError: Could not import backend for traits
________________________________________________________________________________
Make sure that you have either the TraitsBackendWx or the TraitsBackendQt
projects installed. If you installed Mayavi with easy_install, try easy_install
<pkg_name>. easy_install Mayavi[app] will also work.

If you performed a source checkout, be sure to run 'python setup.py install'
in Traits, TraitsGUI, and the Traits backend of your choice.

Also make sure that either wxPython or PyQT is installed.
wxPython: http://www.wxpython.org/
PyQT: http://www.riverbankcomputing.co.uk/software/pyqt/intro

Comentários muito úteis

De fato, o backend do Qt5 funciona perfeitamente! (bem, com todos os exemplos que testei;) usando o programa mayavi e também ipython) Obrigado pela sua dica!
Quando eu estava navegando no código-fonte, encontrei o código para um back-end Qt5 já confirmado meses atrás, então de alguma forma presumi que já havia sido lançado, não percebendo que os pacotes / lançamentos pip correspondentes já têm cerca de 1,5 anos.

Para ser mais preciso sobre minha configuração: Estou executando o OSX e tenho o python 3.6, Qt5, VTK e PyQt instalado usando o gerenciador de pacotes homebrew. Eu instalei / construí traitsui, pyface e mayavi no git master atual usando pip3. Todas as outras dependências foram instaladas a partir do pip3 em sua forma de lançamento regular.

Portanto, quanto a este tíquete, acho que pode ser fechado com o seguinte veredicto sobre back-ends no OSX:

  • wxPython é apenas uma opção quando você está usando o python 2.x
  • Ao usar o python 2.x, você também pode usar PyQT4 / PySide (mas você deve construí-lo sozinho ou usar outros gerenciadores de pacotes além do homebrew / pip)
  • Ao usar o python 3.x, você deve usar o PyQT5, mas precisa construir traitsui / pyface / mayavi a partir do git master
  • PySide (Qt4) é apenas uma opção para um intervalo limitado de versões do python 3.x (com x <5, IIRC), PySide 2 (Qt5) não é suportado até onde eu sei? Mas eu não testei, só queria mencioná-los

Todos 9 comentários

Olá @rambalachandran , TraitsBackendWx e TraitsBackendQt foram substituídos por traitsui e pyface . Você poderia tentar instalar traitsui e pyface por favor? E você pode querer usar qt4 e pyqt4 vez de Qt5.

Obrigada. Você pode me dizer como instalar o pyqt4? Quando tento pip install PyQt4 , ocorre um erro, embora pip search PyQt4 mostre que esse pacote existe

Eu instalei todos os pacotes relevantes. Não consegui encontrar PyQt4 ou wxPython no pip, então instalei PySide . Eu incluí o congelamento de pip como um anexo aqui. Mesmo depois disso, quando tento executar mayavi2 , recebo o mesmo erro

Traceback (most recent call last):
  File "/usr/local/bin/mayavi2", line 11, in <module>
    sys.exit(main())
  File "/usr/local/lib/python2.7/site-packages/mayavi/scripts/mayavi2.py", line 647, in main
    '''
ImportError: Could not import backend for traits
________________________________________________________________________________
Make sure that you have either the TraitsBackendWx or the TraitsBackendQt
projects installed. If you installed Mayavi with easy_install, try easy_install
<pkg_name>. easy_install Mayavi[app] will also work.

If you performed a source checkout, be sure to run 'python setup.py install'
in Traits, TraitsGUI, and the Traits backend of your choice.

Also make sure that either wxPython or PyQT is installed.
wxPython: http://www.wxpython.org/
PyQT: http://www.riverbankcomputing.co.uk/software/pyqt/intro

pipInstallations.txt

Instalar wxpython do homebrew resolveu o problema e a GUI para mayavi2 agora é aberta.

@rambalachandran - podemos encerrar esse problema?

Isso significa que estou sem sorte no OSX usando o python 3.6?
O homebrew do gerenciador de pacotes mencionado possui apenas wxPython clássico, que não oferece suporte a python 3. pip na verdade abandonou esta versão e fornece a versão "phoenix" compatível com python 3, mas mayavi é incompatível com esta.
pip3 não tem uma distribuição PyQT4 para OSX e PyQt5 não é suportado (pelo menos não é captado por traços, embora importe manualmente com sucesso)?
É uma situação bastante incômoda.

@ Argon- - isso é válido para a versão do github ou você instalou a partir do pypi. A última versão deve funcionar com Qt5, mas também requer versões mais recentes de traitsui / pyface que ainda não foram lançadas. Vou perguntar sobre um novo lançamento de traitsui / pyface com suporte ao qt5 e, em seguida, também enviarei um lançamento de mayavi.

Tentei o master of pyface atual, mas não sabia que também preciso de um traitsui (e mayavi) mais recente. Existem outras dependências que preciso construir localmente?
Nesse caso, tentarei / testarei novamente (amanhã) e apresentarei um relatório.

De fato, o backend do Qt5 funciona perfeitamente! (bem, com todos os exemplos que testei;) usando o programa mayavi e também ipython) Obrigado pela sua dica!
Quando eu estava navegando no código-fonte, encontrei o código para um back-end Qt5 já confirmado meses atrás, então de alguma forma presumi que já havia sido lançado, não percebendo que os pacotes / lançamentos pip correspondentes já têm cerca de 1,5 anos.

Para ser mais preciso sobre minha configuração: Estou executando o OSX e tenho o python 3.6, Qt5, VTK e PyQt instalado usando o gerenciador de pacotes homebrew. Eu instalei / construí traitsui, pyface e mayavi no git master atual usando pip3. Todas as outras dependências foram instaladas a partir do pip3 em sua forma de lançamento regular.

Portanto, quanto a este tíquete, acho que pode ser fechado com o seguinte veredicto sobre back-ends no OSX:

  • wxPython é apenas uma opção quando você está usando o python 2.x
  • Ao usar o python 2.x, você também pode usar PyQT4 / PySide (mas você deve construí-lo sozinho ou usar outros gerenciadores de pacotes além do homebrew / pip)
  • Ao usar o python 3.x, você deve usar o PyQT5, mas precisa construir traitsui / pyface / mayavi a partir do git master
  • PySide (Qt4) é apenas uma opção para um intervalo limitado de versões do python 3.x (com x <5, IIRC), PySide 2 (Qt5) não é suportado até onde eu sei? Mas eu não testei, só queria mencioná-los
Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

anntzer picture anntzer  ·  7Comentários

indranilsinharoy picture indranilsinharoy  ·  9Comentários

jan-janssen picture jan-janssen  ·  21Comentários

PennyQ picture PennyQ  ·  4Comentários

thoth291 picture thoth291  ·  10Comentários