python ImportError: Cython.Distutils
Ich habe ein seltsames problem beim Versuch, installieren Sie eine python-Bibliothek, die mit Ihren setup.py Datei. wenn ich das setup.py Datei, bekomme ich eine import-Fehler ausgegeben, der besagt ImportError: No module named Cython.Distutils
, aber ich habe so ein Modul und ich kann Sie importieren Sie Sie auf die python-Kommandozeile ohne Probleme. Warum könnte ich immer diese import-Fehler????
Ist, habe ich mich um ein paar Dutzend Fälle von import-Fehlern, Lesen Sie über die Importe und Pakete, etc., aber kann nicht scheinen, um es herauszufinden. Ich bin jetzt bei Tag zwei-und-ein-Hälfte stecken, an dieser Stelle, so dass ich vermute, es ist an der Zeit, um Hilfe zu bitten!
Die Bibliothek heißt zenlib. Ich denke, dass das problem möglicherweise mit der Tatsache zu tun, dass ich mit Enthought Python Distribution, welche ich installiert vorher, anstatt mit den Python2.7, kam mit Ubuntu 12.04.
Mehr hintergrund:
Hier ist genau das, was ich bekommen, wenn Sie versuchen zu laufen setup.py:
enwe101@enwe101-PCL:~/zenlib/src$ sudo python setup.py install
Traceback (most recent call last):
File "setup.py", line 4, in <module>
from Cython.Distutils import build_ext
ImportError: No module named Cython.Distutils
Aber es funktioniert von der Kommandozeile aus:
>>> from Cython.Distutils import build_ext
>>>
>>> from fake.package import noexist
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named fake.package
Hinweis: der erste import funktionierte und der zweite wirft eine Fehlermeldung. Vergleichen Sie diese, um die ersten paar Zeilen setup.py:
#from distutils.core import setup
from setuptools import setup
from distutils.extension import Extension
from Cython.Distutils import build_ext
import os.path
Machte ich sicher, dass die Enthought Python-Distribution und nicht die python, die kam mit Ubuntu ist, was standardmäßig ausgeführt, indem meine bash $PATH-Umgebungsvariable durch die Bearbeitung ~/.bashrc
, fügen Sie diese als Letzte Zeile:
export PATH=/usr/local/epd/bin:$PATH
und in der Tat which python
spuckt /usr/local/epd/bin/python
... nicht wissend, was anderes zu versuchen, ging ich in meine site-packages-Verzeichnis, ( /usr/local/epd/lib/python2.7/site-packages
), und gewähren Sie volle Zugriffsrechte (r,w,x)Cython
, Distutils
, build_ext.py
, und die __init__.py
- Dateien. Wahrscheinlich dumm, um zu versuchen, und es änderte sich nichts.
Kann nicht glauben, was Sie als Nächstes versuchen!? Irgendwelche Ideen?
sys.path
? sudo python -c 'import Cython.Distutils'
funktionieren? sudo apt-get install python-dev, sudo pip install cython
InformationsquelleAutor der Frage Edward Newell | 2012-06-19
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ihrer sudo ist nicht immer die richtige python. Dies ist ein bekanntes Verhalten von sudo in Ubuntu. Sehen Sie diese Frage für mehr info. Sie müssen sicherstellen, dass sudo fordert das Recht, python, entweder mit dem vollständigen Pfad:
oder indem Sie die folgenden (in der bash):
InformationsquelleAutor der Antwort tiago
Installieren Cython:
InformationsquelleAutor der Antwort Martin Thoma
Laufen
Das ist der Pfad zu den python, dass Ihr system ausgefallen zu
gehen Sie dann zu @tiago Methode:
InformationsquelleAutor der Antwort ashley
Ich habe nur eine Tipp für Sie : Erstellen Sie eine virtualenv. Dies wird sicherstellen, dass Sie nur eine version von python und alle Ihre Pakete lokal installiert (und nicht auf das gesamte system).
Sollte eine der Lösungen.
InformationsquelleAutor der Antwort Depado
Für Python ist3 verwenden
Für python2 verwenden
Details gelesen werden kann diese
InformationsquelleAutor der Antwort Tạ Lục Gia Hoàng
In der CLI-python import sys und schauen, was drin ist sys.Pfad
Dann versuchen, zu verwenden
export PYTHONPATH=whatyougot
InformationsquelleAutor der Antwort lolopop
Leicht.
Könnten Sie versuchen
install cython
Paket zuerst.Wird es aktualisieren Sie Ihre easy_install gebaut in python.
InformationsquelleAutor der Antwort ian
Die folgenden Befehle ausgeführt werden, ist das Problem behoben bei mir in ubuntu 14.04:
Dieser link hat mir geholfen: https://github.com/trezor/python-trezor/issues/40
InformationsquelleAutor der Antwort N. S.
Einfach installieren Cython aus
http://cython.org/#download
und installieren es mit diesem Befehl
Führen Sie dann den Befehl
und es wird installiert, und die Fehlermeldung wird verschwinden.
InformationsquelleAutor der Antwort user2295896