2016-10-14 7 views
0

Ich versuche, eine Tabelle mit SQLAlchemy zu erstellen, und ich bekomme den Fehler "ungültige ELF-Header". Der Weg ist wie folgt:Psycopg2 "Ungültige ELF-Header"

venv/local/lib/python2.7/site-packages/psycopg2-2.6.2-py2.7-linux-x86_64.egg/psycopg2/_psycopg.pyd: invalid ELF header 

Eine Sache zu beachten ist, ich dies auf einem Windows-PC bin mit dem Bash-Shell in einer virtuellen Umgebung unter Verwendung von (virtualenv), aber und hatte die ausführbare Windows-Verteilung von psycopg2 installiert in sowohl mein Betriebssystem als auch in der virtuellen Umgebung. Ich merke, dass Linux im Pfad steht. Weiß jemand, was der ELF-Header ist?

+0

Wir benötigen genaue Angaben zu Ihrer Umgebung. Verwenden Sie Bash unter Windows (auch bekannt als Windows Subsystem für Linux, alias lxss) oder cygwin/msys? Verwenden Sie LXSS Python, Cygwin Python oder natives MSVC-kompiliertes Python? Aus der Fehlermeldung klingt es, als würden Sie Umgebungen mischen. ELF ist das Format für ausführbare Linux-Dateien. Das Windows-Äquivalent heißt PE. – univerio

+0

Ich benutze Bash on Window. Welche Version von psycopg2 soll ich installieren, die Windows Version oder die Linux Version? Ich denke, ich habe eine Windows-Version installiert, aber es ruft nach der Linux-Version. Ich muss möglicherweise eine separate Frage zu diesem Thema, da ich versucht, die Installation der Linux-Version und lief auf Probleme. –

+0

Sie benötigen die Linux-Version. Ich bin mir nicht sicher, wie Sie es überhaupt geschafft haben, die Windows-Version darin zu speichern. – univerio

Antwort

0

Sie müssen nicht versuchen, Architekturen während der Installation von Paketen zu mischen, da viele dazu neigen, aufgrund mehrerer Umgebungen auf einer Maschine zu brechen. ELF-Header definieren, welche Architektur zu verwenden ist (dh 64-Bit oder 32-Bit) usw. Installieren Sie daher die Linux-Version und Sie sollten gut gehen.