Очередная шпаргалка из коллекции проблемных для pip пакетов. На этот раз, речь пойдёт об установке с помощью pip psycopg2 — драйвера для работы с БД postgresql. Список необходимых дополнительных библиотек под катом.
Установка
Предполагается что pip (и по желанию virtualenv) у вас уже установлены и активированы. Для успешной установки psycopg2 необходимо также установить следующие пакеты (на примере ubuntu):
1 | sudo apt-get install python-dev postgresql-server-dev-all |
После этого на моей ubuntu удалось без проблем выполнить «pip install psycopg2».
Признаки отсутствующих пакетов
При попытке установить psycopg2 через pip на чистую систему вы увидите примерно следующее:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 | Downloading/unpacking psycopg2==2.4.6 (from -r docs/common.txt (line 23)) Downloading psycopg2-2.4.6.tar.gz (667kB): 667kB downloaded Storing download in cache at /home/lizzard/.pip_download_cache/http%3A%2F%2Fpypi.python.org%2Fpackages%2Fsource%2Fp%2Fpsycopg2%2Fpsycopg2-2.4.6.tar.gz Running setup.py egg_info for package psycopg2 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'. ---------------------------------------- Cleaning up... Command python setup.py egg_info failed with error code 1 in /home/lizzard/.venvs/ab-server/build/psycopg2 Storing complete log in /home/lizzard/.pip/pip.log |