Установка psycopg2 в virtualenv, когда PostgreSQL не установлен в системе разработки
можно ли установить psycopg2 на virtualenv когда PostgreSQL не установлен в моей системе разработки-MacBook Pro с OS X 10.6?
когда я запускаю pip install psycopg2 из virtualenv, Я получил ошибку, как показано ниже.
Я пытаюсь подключиться к устаревшей базе данных на сервере с помощью Django, и я бы предпочел не устанавливать PostgreSQL в моей системе разработки, если это возможно.
почему бы не установить PostgreSQL?
я получил сообщение об ошибке при установке PostgreSQL с помощью homebrew. У меня есть Xcode4-и только Xcode4-установленный на моем MacBook Pro, и я думаю, что это связано с отсутствием gcc 4.0. Тем не менее, это проблема для другой сайте StackOverflow вопрос.
обновление 8: 37 утра 12 апреля 2011 года: я все равно хотел бы знать, возможно ли это без установки PostgreSQL на моем MacBook Pro. Однако я побежал brew update и принудительная переустановка ossp-uuid с помощью brew install --force ossp-uuid и теперь brew install postgresql строительство. С PostgreSQL успешно установлен, я смог pip install psycopg2 из моего virtualenv.
ошибка pip install psycopg2
$ pip install psycopg2
Downloading/unpacking psycopg2
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
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
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 /Users/matthew/.pip/pip.log
Предварительное Исследование
ниже приведены статьи, которые я читал в качестве предварительного исследования:
- установка psycopg2 для использования Django с PostgreSQL на OS X
- установка psycopg2 на OS X
- С помощью psycopg2 с виртуальное окружение на Ubuntu JauntyLucid
- Postgres, psycopg2, virtualenv install hints
8 ответов:
psycopg зависит от
pg_configкоманда, и если у вас ее нет, вы не можете установить psycopg.Если установка системы является проблемой для вас, почему бы вам не попробовать скомпилировать PostgreSQL и включить сгенерированные файлы bin в ваш $PATH? Например:
export PATH=/path/to/compiled/postgresql/bin:"$PATH" pip install psycopg2
apt-get install libpq-devпомог мне в debian squeeze тоже . После этого сделайте pip установить psycopg2. Я столкнулся с проблемой pg_config не нашел проблемы, когда я настраивал свою среду на heroku, теперь она работает нормально .
вам нужно установить
python-devпакет для того, чтобы использовать расширения python, такие какpsycopg2. Я не знаю, как установить пакеты в mac, но я запускаю следующие команды для установки пакета python на моей машине Ubuntu.sudo apt-get install python-devили
sudo apt-get install python3-devесли вы используете Python3.x.
после завершения установки выполните следующую команду в виртуальной среде.
pip install psycopg2
используя метод, описанный в вашем обновлении от 12 апреля, я смог установить PostgreSQL (+1). Обратите внимание, что я изначально запускал Python 2.7.1 (32bit) и homebrew бросил несколько ошибок и предупреждений относительно использования 32-битной версии Python. С тех пор я переключил 64/32 битную версию 2.7.1, и она работает как чемпион.
Что касается pyscopg2, я смог установить его в свою виртуальную среду из источника, отредактировав настройку.контекстно-свободная грамматика. Я поставил команду pg_config на правильный путь внутри доморощенного погребе (команду pg_config=/usr/местные/погреб/с PostgreSQL/9.0.4/ОГРН/команду pg_config). После сохранения изменений я запустил python setup.py установите с нулевыми проблемами. Стоит отметить, что я сделал не установите значение python по умолчанию для Mac в 32 бит. Я использовал новый 64 бит от начала до конца.
после просмотра некоторых документов я думаю, что если бы я добавил путь postgresql homebrew к системному пути, я мог бы использовать pip для установки оно.
Reference:
http://favosdream.blogspot.com/2009/09/make-psycopg2-and-readline-work-in-snow.htmlобновление 6-8-2011:
При переносе проекта, написанного на OS X в Windows 7, я узнал, что мне также пришлось установить PostgreSQL на Windows. Это привело к созданию другого пользователя на моем стартовом экране и другим вещам, которые мне просто не понравились. А копать я нашел драйверы для Windows PostgreSQL здесь. С тех пор я удалил полный PostgreSQL и установил драйверы ODBC, которые до сих пор отлично работают.чтобы решить исходный вопрос, сделав немного больше копания, я думаю, что нашел эквивалентный ODBC для OS X здесь. У меня не было шанса попробовать его, но концепция очень хорошо работает на Windows 7. Я обновлю это, когда у меня будет возможность попробовать их. До тех пор, я надеюсь, что это поможет.
Я решил его в MAC OSX с помощью:
$ wget https://ftp.postgresql.org/pub/source/v9.5.3/postgresql-9.5.3.tar.bz2 $ tar xfv postgresql-9.5.3.tar.bz2 $ cd postgresql-9.5.3 $ ./configure $ make $ cd src/bin/pg_config $ export PATH=`pwd`:"$PATH" $ pip install psycopg2
поскольку мне никогда не нужно было устанавливать базу данных postgresql на этом сервере, я установил следующие библиотеки на Ubuntu 14_04 версии перед запуском pip install psycopg2 на том же сервере
apt-получить установку библиотеки libpq-dev питона Дэв и затем выполняется пункт Установить psycopg2 внутри виртуального окружения.
выход Сбор psycopg2 Использование кэшированного psycopg2-2.6.1.смола.ГЗ Строительные колеса для собранных пакетов: psycopg2 Бегущий setup.py bdist_wheel для psycopg2 Хранящиеся в каталог /корень/.кэш / Пип / колеса / e2 / 9a / 5e/7b620848bbc7cfb9084aafea077be11618c2b5067bd532f329 Успешно построенный psycopg2 Установка собранных пакетов: psycopg2 Успешно установить psycopg2-2.6.1
Comments