Завершите новичка здесь, пытаясь настроить Django для работы с ProstgreSQL.
Я использую Mac OSX 10.6.8. Я также установил PostgreSQL 9.3
Когда я работаю pip install psycopg2
в терминале я получаю следующую ошибку
Downloading/unpacking psycopg2
Downloading psycopg2-2.5.2.tar.gz (685kB): 685kB downloaded
Running setup.py (path:/private/var/folders/A9/A99cs6x0FNusPejCVkYNTE+++TI/-Tmp-/pip_build_bengorman/psycopg2/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'.
Я видел много сообщений на этом
how-to-install-psycopg2-with-pip-on-python
pg-config-executable-not-found
но у меня нет подсказки, как найти местоположение папки мусорного ведра, содержащее pg_config. Какие-либо подсказки относительно нахождения этого пути?
Я рекомендую попытаться использовать Postgres.app. ( http://postgresapp.com ), Этот путь можно легко включить и выключить Пост-ГРЭС на Mac. После того как Вы делаете, добавьте путь к Пост-ГРЭС к Вашему .profile
файл путем добавления следующего:
PATH="/Applications/Postgres.app/Contents/Versions/latest/bin:$PATH"
Только после добавления Пост-ГРЭС к пути, который можно попытаться установить psycopg2
любой в виртуальной среде (использующий зернышко) или в глобальные пакеты сайта.
sudo find / -name "pg_config" -print
ответ является/Library/PostgreSQL/9.1/bin/pg_config в моей конфигурации (Индивидуалист MAC)
Postgres.app был недавно обновлен. Теперь это хранит все двоичные файлы в папке "Versions"
PATH="/Applications/Postgres.app/Contents/Versions/9.4/bin:$PATH"
Где 9,4 †“В версия PostgreSQL.
Установка домашнего пива
/usr/bin/ruby -e "$(curl -fsSL https://raw.github.com/gist/323731)"
И затем установка postgresql
brew install postgresql
дали мне этот прекрасный бит вывода:
checking for pg_config... yes
а-а-а yeahhhhh
После того как Вы устанавливаете текущее приложение PostgreSQL на MacOS X 10.11, это - то, где pg_config файл /Library/PostgreSQL/9.5/bin/pg_config
.
Затем на Терминале:
$ export PG_HOME=/Library/PostgreSQL/9.5
$ export PATH=$PATH:$PG_HOME/bin
Это поместит путь в .profile любого терминала, который Вы используете.
В Вашей среде (принимающий Вас используют virtualenv
) Вы затем устанавливаете psycopg2:
$ pip install psycopg2
необходимо видеть, загрузили ли Вы его прежде:
Collecting psycopg2
Using cached psycopg2-2.6.1.tar.gz
Installing collected packages: psycopg2
Running setup.py install for psycopg2 ... done
Successfully installed psycopg2-2.6.1
Для суммирования - PostgreSQL устанавливает свои файлы (включая его двоичные или исполняемые файлы) в различных местоположениях, в зависимости от номера версии и метода установки.
Некоторые возможности:
/usr/local/bin/
/Library/PostgreSQL/9.2/bin/
/Applications/Postgres93.app/Contents/MacOS/bin/
/Applications/Postgres.app/Contents/Versions/9.3/bin/
Неудивительные люди запутываются!
кроме того, если Ваша переменная среды $PATH включает путь к каталогу, который включает исполняемый файл (для подтверждения этого используйте echo $PATH
на командной строке), затем, можно работать which pg_config
, which psql
, и т.д. для обнаружения , где файл расположен .
У меня была точно та же ошибка, но я установил postgreSQL через варево и повторно выполнил исходную команду, и это работало отлично:
установки вареваpostgresql
Можно найти pg_config
каталог с помощью его тезки:
$ pg_config --bindir
/usr/lib/postgresql/9.1/bin
$
Протестированный на Mac и Debian. Единственная морщина - то, что я не вижу, как найти bindir для различных версий пост-ГРЭС установленным на той же машине. Довольно легко предположить хотя! :-)
Примечание: Я обновил свой pg_config к 9,5 на Debian с:
sudo apt-get install postgresql-server-dev-9.5
проверьте/Library/PostgreSQL/9.3/bin, и необходимо найти pg_config
Т.Е. /Library/PostgreSQL/<version_num>/
пикосекунда: можно сделать следующее, если Вы считаете, это необходимый для Ваших потребностей pg -
создает .profile в Вашем ~ каталоге
export PG_HOME=/Library/PostgreSQL/9.3
export PATH=$PATH:$PG_HOME/bin
, который можно теперь использовать psql
или postgres
команды от терминала и установить psycopg2, или любая другая зависимость без проблем, плюс Вы может всегда всего ls $PG_HOME/bin
, когда Вы испытываете желание посмотреть на свой pg_dir.
Я использовал:
export PATH=$PATH:/Library/PostgreSQL/9.6/bin
pip install psycopg2
Имейте ту же проблему о Mac, Вам, вероятно, нужно к
postgresql
установки варева затем, можно работать
psycopg2
установки зернышка, варево устранит проблему ПУТИ для Вас
, это решение работает на меня, по крайней мере.
pg_config
$ which pg_config // prints the directory location
/usr/bin/pg_config