Ich versuche, eine PostgreSQL-Datenbank für mein Django-Projekt einzurichten. Dies ist, glaube ich, dank der Antworten auf meine letzte Frage Probleme beim Erstellen einer PostgreSQL-Datenbank für ein Django-Projekt . Ich versuche jetzt, den Befehl 'python manage.py runserver' in Terminal auszuführen, um meinen localhost einzurichten, aber wenn ich den Befehl ausführe, sehe ich diese Antwort ...
Error: No module named psycopg2.extensions
Ich bin nicht sicher, was dies bedeutet - Ich habe versucht, psycopg2 herunterzuladen, kann aber scheinbar keine Möglichkeit finden, psycopg2 mit Homebrew herunterzuladen. Ich habe easy_install, pip install und Sudo ausprobiert, aber alle geben Fehler wie diese zurück ...
Downloading http://www.psycopg.org/psycopg/tarballs/PSYCOPG-2-4/psycopg2-2.4.5.tar.gz
Processing psycopg2-2.4.5.tar.gz
Writing /tmp/easy_install-l7Qi62/psycopg2-2.4.5/setup.cfg
Running psycopg2-2.4.5/setup.py -q bdist_Egg --dist-dir /tmp/easy_install-l7Qi62/psycopg2-2.4.5/Egg-dist-tmp-PBP5Ds
no previously-included directories found matching 'doc/src/_build'
unable to execute gcc-4.0: No such file or directory
error: Setup script exited with error: command 'gcc-4.0' failed with exit status 1
Wie kann ich das beheben?
Als erstes müssen Sie die Abhängigkeiten installieren.
Sudo apt-get build-dep python-psycopg2
Danach geh in deine virtualenv und benutze
pip install psycopg2-binary
Diese beiden Befehle sollten das Problem lösen.
pip install psycopg2-binary
Das psycopg2-Radpaket wird ab Version 2.8 umbenannt. Um die Installation von Binärdateien fortzusetzen, verwenden Sie stattdessen "pip install psycopg2-binary". Weitere Informationen finden Sie unter: http://initd.org/psycopg/docs/install.html#binary-install-from-pypi .
erstinstallation apt-get install python-setuptools
dann versuche easy_install psycopg2
Dies hat mir auf Ubuntu geholfen, wenn Ihr Python vom Ubuntu-Installationsprogramm installiert wurde. Ich tat dies, nachdem ich erfolglos versucht hatte 'apt-get install' und 'pip install':
Im Terminal:
Sudo synaptic
dann in synaptisches Suchfeld schreiben
psycopg2
wählen
python-psycopg2
markieren Sie es zur Installation, indem Sie mit der rechten Maustaste klicken und "Anwenden" drücken. Wenn Sie synaptic nicht installiert haben, machen Sie zuerst Folgendes:
Sudo apt-get install synaptic
Ich habe es erfolgreich mit diesen Befehlen installiert:
Sudo apt-get install libpq-dev python-dev
pip install psycopg2
Stellen Sie in Python 3.4 in einer virtuellen Umgebung sicher, dass Sie zunächst die Build-Abhängigkeiten haben:
Sudo apt-get build-dep python3-psycopg2
Dann installieren Sie es:
pip install psycopg2
Für Django 2
und python 3
installieren Sie psycopg2
mit pip3
:
pip3 install psycopg2
versuche dies:
Sudo pip install -i https://testpypi.python.org/pypi psycopg2 == 2.7b2
.. Dies ist besonders hilfreich, wenn Sie einen Ei-Fehler haben
in aws ec2-Instanzen, wenn der gcc-Fehler auftritt; Versuche dies
1. Sudo yum install gcc python-setuptools python-devel postgresql-devel
2. Sudo su -
3. Sudo pip installiere psycopg2
Es scheint, dass Sie gcc-4.0
benötigen, und es wäre hilfreich, den Betriebssystemtyp und die Version anzugeben.
Vielleicht hilft Ihnen diese Frage ein wenig: GCC unter Mac OS X Leopard installieren, ohne Xcode zu installieren
Update
Ich bin ein Windows-Benutzer, daher kann ich Ihr Setup nicht testen, aber ein kurzer Google-Verweis wies auf einige weitere Links hin:
Beim Ausführen von No module named psycopg2.extensions
auf einem Mac mit Mavericks (10.9) ist der Fehler pip2 install psycopg2
aufgetreten. Ich glaube nicht, dass meine Stack-Trace eine Nachricht über gcc enthielt und auch einen Hinweis enthielt:
Error: pg_config executable not found.
Please add the directory containing pg_config to the PATH
or specify the full executable path with the option:
python setup.py build_ext --pg-config /path/to/pg_config build ...
or with the pg_config option in 'setup.cfg'.
Ich habe nach der pg_config
-Datei in meiner Postgres-Installation gesucht und den Ordner, der sie enthält, meinem Pfad hinzugefügt: /Applications/Postgres.app/Contents/Versions/9.4/bin
. Ihr Pfad kann unterschiedlich sein, insbesondere wenn Sie eine andere Version von Postgres installiert haben - ich würde einfach herumstoßen, bis Sie den Ordner bin/
finden. Danach hat die Installation funktioniert.
Für macOS Mojave
einfach pip install psycopg2-binary
ausführen. Funktioniert gut für mich, Python-Version -> Python 3.7.2
Überprüfen Sie, ob Sie psycopg2 installiert haben, falls nicht
Sudo apt-get install psycopg2
Installieren Sie die Abhängigkeiten.
Sudo apt-get build-dep python-psycopg2
Diese beiden Befehle sollten das Problem lösen.
Unter Alpine Linux (die Mehrheit der Docker-Container) machen Sie:
apk add postgresql-dev
Dann:
pip install psycopg2-binary
Ich habe die Erweiterung nur nach dem Import von psycopg2 verwendet:
import psycopg2
...
psycopg2.extensions.AsIs(anap[i])
sie können gcc für Macos von https://github.com/kennethreitz/osx-gcc-installer installieren.
Nach der Installation von gcc können Sie psycopg mit easy_install
oder mit pip
installieren.