Jak zainstalować psycopg2 z "pip" w Pythonie?
Używam virtualenv
i muszę zainstalować "psycopg2".
Zrobiłem co następuje:
pip install http://pypi.python.org/packages/source/p/psycopg2/psycopg2-2.4.tar.gz#md5=24f4368e2cfdc1a2b03282ddda814160
I mam następujące wiadomości:
Downloading/unpacking http://pypi.python.org/packages/source/p/psycopg2/psycopg2
-2.4.tar.gz#md5=24f4368e2cfdc1a2b03282ddda814160
Downloading psycopg2-2.4.tar.gz (607Kb): 607Kb downloaded
Running setup.py egg_info for package from http://pypi.python.org/packages/sou
rce/p/psycopg2/psycopg2-2.4.tar.gz#md5=24f4368e2cfdc1a2b03282ddda814160
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'.
Complete output from command python setup.py egg_info:
running egg_info
creating pip-egg-info\psycopg2.egg-info
writing pip-egg-info\psycopg2.egg-info\PKG-INFO
writing top-level names to pip-egg-info\psycopg2.egg-info\top_level.txt
writing dependency_links to pip-egg-info\psycopg2.egg-info\dependency_links.txt
writing manifest file 'pip-egg-info\psycopg2.egg-info\SOURCES.txt'
warning: manifest_maker: standard file '-c' not found
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'.
----------------------------------------
Command python setup.py egg_info failed with error code 1
Storing complete log in C:\Documents and Settings\anlopes\Application Data\pip\p
ip.log
Moje pytanie, muszę to zrobić tylko po to, aby psycopg2 działał?
python setup.py build_ext --pg-config /path/to/pg_config build ...
26 answers
Znalazłem ten post szukając linuksowego rozwiązania tego problemu.
Ten post napisany przez "goshawk" dał mi rozwiązanie: Uruchom sudo apt-get install libpq-dev python-dev
Jeśli jesteś na Ubuntu/Debianie.
Update
Ponieważ więcej osób uznało tę odpowiedź za przydatną i opublikowało własne rozwiązania, oto ich lista:
Debian / Ubuntu
Python 2
sudo apt install libpq-dev python-dev
Python 3
sudo apt install libpq-dev python3-dev
Dodatkowe
Jeśli żadne z powyższych nie rozwiąże Twojego problemu, try
sudo apt install build-essential
Lub
sudo apt install postgresql-server-dev-all
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-10-06 15:22:27
Na CentOS potrzebne są pakiety Postgres dev:
sudo yum install python-devel postgresql-devel
To było rozwiązanie przynajmniej na CentOS 6.Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-06-23 09:21:52
Na Mac Mavericks z Postgres.aplikacja w wersji 9.3.2.0 RC2 musiałem użyć następującego kodu po zainstalowaniu Postgres:
sudo PATH=$PATH:/Applications/Postgres.app/Contents/Versions/9.3/bin pip install psycopg2
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-12-22 01:51:34
Jeśli jesteś na Macu możesz użyć homebrew
brew install postgresql
I wszystkie inne opcje są tutaj: http://www.postgresql.org/download/macosx/
Powodzenia
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-10-31 16:26:26
Niedawno skonfigurowałem psycopg2 na komputerze z systemem windows. Najprostszą instalacją jest użycie pliku wykonywalnego windows. Znajdziesz go pod adresem http://stickpeople.com/projects/python/win-psycopg/.
Aby zainstalować natywny plik binarny w wirtualnym środowisku, użyj easy_install:
C:\virtualenv\Scripts\> activate.bat
(virtualenv) C:\virtualenv\Scripts\> easy_install psycopg2-2.5.win32-py2.7-pg9.2.4-release.exe
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-06-01 20:52:27
W Pythonie 3 powinieneś użyć sudo apt-get install libpq-dev python3-dev
pod Debianem.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-10-03 18:39:02
To mi się udało (na RHEL, CentOS:
sudo yum install postgresql postgresql-devel python-devel
A teraz dołącz ścieżkę do katalogu binarnego postgresql z instalacją pip:
sudo PATH=$PATH:/usr/pgsql-9.3/bin/ pip install psycopg2
Upewnij się, że zawiera prawidłową ścieżkę. To wszystko:)
Aktualizacja: w Pythonie 3 Zainstaluj python3-devel
zamiast python-devel
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-02-22 23:29:58
Jeśli używasz Mac OS, powinieneś zainstalować PostgreSQL ze źródła. Po zakończeniu instalacji musisz dodać tę ścieżkę używając:
export PATH=/local/pgsql/bin:$PATH
Lub możesz dodać ścieżkę w następujący sposób:
export PATH=.../:usr/local/pgsql/bin
W pliku .profile
lub .zshrc
.
Może się to różnić w zależności od systemu operacyjnego.
Możesz śledzić proces instalacji z http://www.thegeekstuff.com/2009/04/linux-postgresql-install-and-configure-from-source/
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-04-02 07:22:06
Odpowiedzi na razie są zbyt podobne do magicznych przepisów. Wyświetlony błąd informuje, że pip nie może znaleźć potrzebnej części biblioteki zapytań PostgreSQL. Prawdopodobnie dzieje się tak dlatego, że masz go zainstalowanego w niestandardowym miejscu dla Twojego systemu operacyjnego, dlatego wiadomość sugeruje użycie opcji --pg-config.
Ale częstszym powodem jest to, że w ogóle nie masz zainstalowanego libpq. Dzieje się tak często na komputerach, na których nie masz zainstalowanego serwera PostgreSQL, ponieważ tylko chcesz uruchamiać aplikacje klienckie, a nie sam serwer. Każdy OS / distro jest inny, na przykład na Debianie / Ubuntu musisz zainstalować libpq-dev. Pozwala to na kompilację i łączenie kodu z biblioteką zapytań PostgreSQL.
Większość odpowiedzi sugeruje również zainstalowanie Biblioteki programistów Pythona. Bądź ostrożny. Jeśli używasz tylko domyślnego Pythona zainstalowanego przez Twoją dystrybucję, będzie to działać, ale jeśli masz nowszą wersję, może to spowodować problemy. Jeśli zbudowałeś Pythona na tej maszynie to mamy już biblioteki dev potrzebne do kompilacji bibliotek C / C++ do interfejsu z Pythonem. Tak długo, jak używasz poprawnej wersji pip, tej zainstalowanej w tym samym folderze binarnym co binarny python, to wszystko jest ustawione. Nie ma potrzeby instalowania starej wersji.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-01-17 19:41:13
On Debian/Ubuntu
:
Najpierw zainstaluj i zbuduj zależności psycopg2
pakietu:
# apt-get build-dep python-psycopg2
Następnie w środowisku wirtualnym skompiluj i zainstaluj psycopg2
Moduł:
(env)$ pip install psycopg2
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-09-06 14:27:15
Robiłem to już wcześniej, gdzie w windows instalujesz najpierw w swojej podstawowej instalacji Pythona.
Następnie, ręcznie skopiuj zainstalowany psycopg2 do instalacji virtualenv.
Nie jest ładny, ale działa.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-02-27 03:35:21
Oprócz instalacji wymaganych pakietów, musiałem również ręcznie dodać katalog PostgreSQL bin do PATH.$vi ~/.bash_profile
Dodaj PATH=/usr/pgsql-9.2/bin:$PATH
Przed export PATH
.$source ~/.bash_profile
$pip install psycopg2
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-03-30 09:51:13
W windows XP pojawia się ten błąd, jeśli postgres nie jest zainstalowany ...
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-03-14 12:42:47
Zainstalowałem Postgresql92 używając repozytorium RedHat / CentOS na stronie pobierania PG http://www.postgresql.org/download/linux/redhat/
Aby uzyskać pg_config, musiałem dodać /usr/pgsql-9.2 / bin do PATH.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-09-27 15:24:11
Walczę z tym od kilku dni i w końcu wymyśliłem, jak uruchomić polecenie "pip install psycopg2" w virtualenv w Windows (uruchamiając Cygwin).
Naciskałem " pg_config executable not found."błąd, ale już Pobrałem i zainstalowałem postgres w systemie Windows. Zainstalowano go również w Cygwinie; uruchomienie "which pg_config" w Cygwinie dało"/usr/bin / pg_config", a uruchomienie" pg_config " dało rozsądne wyjście -- jednak wersja zainstalowana z Cygwinem jest:
VERSION = PostgreSQL 8.2.11
To nie będzie działać z bieżącą wersją psycopg2, która wydaje się wymagać co najmniej 9.1. Kiedy dodałem "c:\Program Files\PostgreSQL \ 9.2 \ bin" do mojej ścieżki Windows, Cygwin PIP installer był w stanie znaleźć poprawną wersję PostgreSQL, I udało mi się pomyślnie zainstalować moduł za pomocą pip. (Jest to prawdopodobnie lepsze niż używanie Cygwin w wersji PostgreSQL, ponieważ natywna wersja będzie działać znacznie szybciej).
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-09-26 03:31:43
Na Fedorze 24: Dla Pythona 3.x
sudo dnf install postgresql-devel python3-devel
sudo dnf install redhat-rpm-config
Aktywuj swoje wirtualne środowisko:
pip install psycopg2
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-10-11 02:09:08
Dla niskich użytkowników Windows utknęli konieczności instalacji psycopg2 z poniższego linku, po prostu zainstalować go do dowolnej instalacji Pythona masz skonfigurowany. Umieści folder o nazwie "psycopg2" w folderze site-packages Twojej instalacji Pythona.
Następnie po prostu skopiuj ten folder do katalogu site-packages twojego virtualenv i nie będziesz miał żadnych problemów.
Tutaj znajduje się link, w którym można znaleźć plik wykonywalny do zainstalowania psycopg2
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-12-21 21:33:04
Na OpenSUSE 13.2 to naprawiło:
sudo zypper in postgresql-devel
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-07-01 18:19:30
Mogłem zainstalować go na komputerze z systemem windows i używając Anaconda / Spyder z Pythonem 2.7 za pomocą następujących komend:
!pip install psycopg2
Następnie nawiązanie połączenia z bazą danych:
import psycopg2
conn = psycopg2.connect(dbname='dbname',host='host_name',port='port_number', user='user_name', password='password')
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-04-11 11:18:57
W Arch rozkład bazowy:
sudo pacman -S python-psycopg2
pip2 install psycopg2 # Use pip or pip3 to python3
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-07-09 09:29:28
Psycopg2 zależy od bibliotek Postgres. Na Ubuntu możesz użyć:
apt-get install libpq-dev
Wtedy:
pip install psycopg2
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-02-18 07:36:15
Na Ubuntu potrzebowałem tylko pakietu Postgres dev:
sudo apt-get install postgresql-server-dev-all
*testowane w virtualenv
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-01-04 14:47:29
Na OSX 10.11.6 (El Capitan)
brew install postgresql
PATH=$PATH:/Library/PostgreSQL/9.4/bin pip install psycopg2
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-02-24 23:35:54
Na OSX z macports:
sudo port install postgresql96
export PATH=/opt/local/lib/postgresql96/bin:$PATH
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-03-17 14:07:24
Jeśli pip nie działa, możesz pobrać .plik whl stąd https://pypi.python.org/pypi/psycopg2
wyciągnij to..
than python setup.py install
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-01-23 12:21:30
Spróbuj w Gentoo
:
emerge dev-libs/libpqxx
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-09-29 12:06:21