Mayavi: Mayavi-Installationsproblem in Mac OSX über Homebrew und pip

Erstellt am 21. Dez. 2016  ·  9Kommentare  ·  Quelle: enthought/mayavi

Ich versuche, mayavi in ​​Mac OSX über Homebrew und Pip zu installieren und zu verwenden. Ich habe Python2, qt5, pyqt5 und vtk 7.1 über Homebrew installiert und den Pfad geändert, um Homebrew-Python zum Standard zu machen. Dann, wenn ich versuche, mayavi über pip zu installieren. Wenn ich mayavi2 in der Befehlszeile ausführe, erhalte ich die folgende Fehlermeldung. Ich sehe kein TraitsBackendWx oder TraitsBackendQt in pip search . Wie kann man diesen Fehler beheben?

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

Hilfreichster Kommentar

Tatsächlich funktioniert das Qt5-Backend perfekt! (naja, mit all den Beispielen, die ich getestet habe ;) sowohl mit dem mayavi-Programm als auch mit ipython) Danke für deinen Hinweis!
Beim Durchsuchen des Quellcodes fand ich Code für ein Qt5-Backend, das bereits vor Monaten festgeschrieben wurde, also nahm ich irgendwie an, dass dies bereits veröffentlicht wurde, ohne zu bemerken, dass die entsprechenden Pip-Pakete/Releases bereits ~1,5 Jahre alt sind.

Um genauer zu meinem Setup zu sein: Ich verwende OSX und habe Python 3.6, Qt5, VTK und PyQt mit dem Paketmanager Homebrew installiert. Ich habe Traitsui, Pyface und Mayavi auf dem aktuellen Git-Master mit pip3 installiert/gebaut. Alle anderen Abhängigkeiten wurden von pip3 in ihrer regulären Versionsform installiert.

Was dieses Ticket betrifft, kann es meiner Meinung nach mit dem folgenden Urteil in Bezug auf Backends unter OSX geschlossen werden:

  • wxPython ist nur eine Option, wenn Sie Python 2.x verwenden
  • Wenn Sie Python 2.x verwenden, können Sie möglicherweise auch PyQT4/PySide verwenden (Sie müssen es jedoch entweder selbst erstellen oder andere Paketmanager als Homebrew/Pip verwenden)
  • Wenn Sie Python 3.x verwenden, sollten Sie PyQT5 verwenden, müssen jedoch traitsui/pyface/mayavi von git master erstellen
  • PySide (Qt4) ist nur eine Option für eine begrenzte Anzahl von Python 3.x-Versionen (mit x < 5, IIRC), PySide 2 (Qt5) wird meines Wissens nicht unterstützt? Aber die habe ich nicht getestet, wollte sie nur erwähnen

Alle 9 Kommentare

Hallo @rambalachandran , TraitsBackendWx und TraitsBackendQt werden durch traitsui und pyface . Könnten Sie bitte versuchen, traitsui und pyface zu installieren? Und vielleicht möchten Sie qt4 und pyqt4 anstelle von Qt5 verwenden.

Dankeschön. Können Sie mir bitte sagen, wie man pyqt4 installiert? Wenn ich pip install PyQt4 versuche, bekomme ich eine Fehlermeldung, obwohl pip search PyQt4 anzeigt, dass ein solches Paket existiert

Ich habe alle relevanten Pakete installiert. Ich konnte PyQt4 oder wxPython in pip nicht finden, also habe ich PySide installiert. Den Pip Freeze habe ich hier als Anhang beigefügt. Auch danach, wenn ich versuche, mayavi2 auszuführen, erhalte ich den gleichen Fehler

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

Die Installation von wxpython von Homebrew löste das Problem und die GUI für mayavi2 öffnet sich jetzt.

@rambalachandran - können wir dieses Problem schließen?

Bedeutet dies, dass ich unter OSX mit Python 3.6 kein Glück habe?
Der erwähnte Paketmanager Homebrew hat nur das klassische wxPython, welches Python 3 nicht unterstützt. pip hat diese Version eigentlich aufgegeben und liefert die Python 3 kompatible "phoenix"-Version, aber mayavi ist zu dieser inkompatibel.
pip3 hat keine PyQT4-Distribution für OSX und PyQt5 wird nicht unterstützt (zumindest wird es nicht von Traits aufgenommen, obwohl es erfolgreich von Hand importiert wird)?
Das ist eine ziemlich unangenehme Situation.

@Argon- -- gilt dies für die Version von github oder haben Sie es von pypi pip installiert. Die neueste Version sollte mit Qt5 funktionieren, erfordert aber auch neuere Versionen von traitsui/pyface, die noch nicht veröffentlicht wurden. Ich werde nach einer neuen traitsui/pyface-Version fragen, die qt5 unterstützt, dann werde ich auch eine Mayavi-Version veröffentlichen.

Ich habe es mit dem aktuellen Meister von Pyface versucht, war mir aber nicht bewusst, dass ich auch ein neueres Traitsui (und Mayavi) brauche. Gibt es noch andere Abhängigkeiten, die ich lokal erstellen muss?
In dem Fall werde ich es (morgen) noch einmal versuchen/testen und berichten.

Tatsächlich funktioniert das Qt5-Backend perfekt! (naja, mit all den Beispielen, die ich getestet habe ;) sowohl mit dem mayavi-Programm als auch mit ipython) Danke für deinen Hinweis!
Beim Durchsuchen des Quellcodes fand ich Code für ein Qt5-Backend, das bereits vor Monaten festgeschrieben wurde, also nahm ich irgendwie an, dass dies bereits veröffentlicht wurde, ohne zu bemerken, dass die entsprechenden Pip-Pakete/Releases bereits ~1,5 Jahre alt sind.

Um genauer zu meinem Setup zu sein: Ich verwende OSX und habe Python 3.6, Qt5, VTK und PyQt mit dem Paketmanager Homebrew installiert. Ich habe Traitsui, Pyface und Mayavi auf dem aktuellen Git-Master mit pip3 installiert/gebaut. Alle anderen Abhängigkeiten wurden von pip3 in ihrer regulären Versionsform installiert.

Was dieses Ticket betrifft, kann es meiner Meinung nach mit dem folgenden Urteil in Bezug auf Backends unter OSX geschlossen werden:

  • wxPython ist nur eine Option, wenn Sie Python 2.x verwenden
  • Wenn Sie Python 2.x verwenden, können Sie möglicherweise auch PyQT4/PySide verwenden (Sie müssen es jedoch entweder selbst erstellen oder andere Paketmanager als Homebrew/Pip verwenden)
  • Wenn Sie Python 3.x verwenden, sollten Sie PyQT5 verwenden, müssen jedoch traitsui/pyface/mayavi von git master erstellen
  • PySide (Qt4) ist nur eine Option für eine begrenzte Anzahl von Python 3.x-Versionen (mit x < 5, IIRC), PySide 2 (Qt5) wird meines Wissens nicht unterstützt? Aber die habe ich nicht getestet, wollte sie nur erwähnen
War diese Seite hilfreich?
0 / 5 - 0 Bewertungen

Verwandte Themen

Kekushke picture Kekushke  ·  9Kommentare

scottstanie picture scottstanie  ·  4Kommentare

anntzer picture anntzer  ·  7Kommentare

kitchoi picture kitchoi  ·  10Kommentare

stefanoborini picture stefanoborini  ·  11Kommentare