Как найти pg_config путь - программирование
Подтвердить что ты не робот

Как найти pg_config путь

Завершите новичку здесь, пытаясь настроить 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

но я не знаю, как найти папку с папкой bin, содержащую pg_config. Любые советы по поиску этого пути?

4b9b3361

Ответ 1

Я рекомендую вам попробовать использовать Postgres.app. (http://postgresapp.com) Таким образом, вы можете легко включать и отключать Postgres на вашем Mac. После этого добавьте путь к Postgres в свой .profile файл, добавив следующее:

PATH="/Applications/Postgres.app/Contents/Versions/latest/bin:$PATH"

Только после того, как вы добавили Postgres на свой путь, вы можете попробовать установить psycopg2 либо в виртуальную среду (используя pip), либо в свои пакеты глобального сайта.

Ответ 2

Недавно был обновлен Postgres.app. Теперь он сохраняет все двоичные файлы в папке "Версии"

PATH="/Applications/Postgres.app/Contents/Versions/9.4/bin:$PATH"

Где 9.4 - версия PostgreSQL.

Ответ 3

sudo find / -name "pg_config" -print

Ответ:/Library/PostgreSQL/9.1/bin/pg_config в моей конфигурации (MAC Maverick)

Ответ 4

Установка доморощенного

/usr/bin/ruby -e "$(curl -fsSL https://raw.github.com/gist/323731)"

И затем установите postgresql

brew install postgresql

дал мне этот прекрасный бит выхода:

checking for pg_config... yes

ahhh yeahhhhh

Ответ 5

После установки текущего приложения 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

Ответ 6

Подводя итог - 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 и т.д. чтобы найти где находится файл.

Ответ 7

У меня была точно такая же ошибка, но я установил postgreSQL через brew и перезапустил исходную команду, и она отлично работала:

brew установить postgresql

Ответ 8

Вы можете найти каталог pg_config, используя его тег:

$ pg_config --bindir
/usr/lib/postgresql/9.1/bin
$ 

Протестировано на Mac и Debian. Единственная морщина заключается в том, что я не вижу, как найти bindir для разных версий postgres, установленных на одном компьютере. Это довольно легко угадать, хотя!: -)

Примечание. Я обновил свой pg_config до 9.5 на Debian с помощью

sudo apt-get install postgresql-server-dev-9.5

Ответ 9

проверьте/Library/PostgreSQL/9.3/bin, и вы должны найти pg_config

т.е. /Library/PostgreSQL/<version_num>/

ps: вы можете сделать следующее, если считаете это необходимым для своих потребностей pg -

создать .profile в ~ каталоге

export PG_HOME=/Library/PostgreSQL/9.3
export PATH=$PATH:$PG_HOME/bin

Теперь вы можете использовать команды psql или postgres от терминала, а также установить psycopg2 или любую другую зависимость без проблем, плюс вы всегда можете просто ls $PG_HOME/bin, когда вам хочется заглянуть в свой pg_dir.

Ответ 10

Я использовал:

export PATH=$PATH:/Library/PostgreSQL/9.6/bin

pip install psycopg2

Ответ 11

У вас такая же проблема на Mac, вам, вероятно, нужно

brew установить postgresql

то вы можете запустить

pip install psycopg2

brew исправит проблему PATH для вас

это решение работает для меня как минимум.