Estou usando virtualenv
e preciso instalar o "psycopg2".
Eu fiz o seguinte:
pip install http://pypi.python.org/packages/source/p/psycopg2/psycopg2-2.4.tar.gz#md5=24f4368e2cfdc1a2b03282ddda814160
E eu tenho as seguintes mensagens:
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
Minha pergunta, eu só preciso fazer isso para que o psycopg2 funcione?
python setup.py build_ext --pg-config /path/to/pg_config build ...
python
virtualenv
psycopg2
pip
André
fonte
fonte
sudo apt install libpq-dev python3.4-dev
ousudo apt install libpq-dev python3.5-dev
Respostas:
Nota : Há algum tempo, há rodas binárias para Windows no PyPI, portanto isso não deve mais ser um problema para os usuários do Windows. Abaixo estão as soluções para usuários Linux, Mac, já que muitos deles encontram este post através de pesquisas na web.
Opção 1
Instale o
psycopg2-binary
pacote PyPI, ele possui rodas Python para Linux e Mac OS.opção 2
Instale os pré-requisitos para construir o
psycopg2
pacote a partir da fonte:Debian / Ubuntu
Python 3
Pode ser necessário instalar
python3.8-dev
ou semelhante para, por exemplo, o Python 3.8.Python 2 1
Se isso não for suficiente, tente
ou
antes de instalar o psycopg2 novamente.
CentOS 6
Veja a resposta de Banjer
1 Sério? É 2020
fonte
*-dev
pacotes contêm os arquivos necessários para compilar um aplicativo a partir da fonte que utiliza as funções fornecidas pela biblioteca (comopsycopg2
usa as bibliotecaslibpq
epython
, entre outras).sudo apt-get install postgresql-server-dev-all
sudo apt-get install -y build-essential
No CentOS, você precisa dos pacotes dev do postgres:
Essa foi a solução no CentOS 6, pelo menos.
fonte
sudo yum install python36-devel
(substitua 36 pela sua versão do Python 3).No Mac Mavericks com Postgres.app versão 9.3.2.0 RC2, eu precisei usar o seguinte código após instalar o Postgres:
sudo PATH=$PATH:/Applications/Postgres.app/Contents/Versions/9.3/bin pip install psycopg2
fonte
PATH=$PATH:/Library/PostgreSQL/9.4/bin pip install psycopg2
.se você estiver em um mac, você pode usar homebrew
E todas as outras opções estão aqui: http://www.postgresql.org/download/macosx/
Boa sorte
fonte
virtualenv
como o OP pediu.Recentemente configurei o psycopg2 em uma máquina Windows. A instalação mais fácil é usar um binário executável do Windows. Você pode encontrá-lo em http://stickpeople.com/projects/python/win-psycopg/ .
Para instalar o binário nativo em um ambiente virtual, use easy_install:
fonte
Para Python 3, você deve usar o
sudo apt-get install libpq-dev python3-dev
Debian.fonte
Foi isso que funcionou para mim (no RHEL, CentOS:
E agora inclua o caminho para o diretório binário do postgresql com a instalação do pip:
Certifique-se de incluir o caminho correto. Isso é tudo :)
UPDATE: Para python 3, instale em
python3-devel
vez depython-devel
fonte
Se você estiver usando o Mac OS, instale o PostgreSQL a partir da fonte. Após a conclusão da instalação, você precisa adicionar este caminho usando:
ou você pode acrescentar o caminho da seguinte maneira:
no seu
.profile
arquivo ou.zshrc
arquivo.Isso pode variar de acordo com o sistema operacional.
Você pode seguir o processo de instalação em http://www.thegeekstuff.com/2009/04/linux-postgresql-install-and-configure-from-source/
fonte
As respostas até agora são muito parecidas com receitas mágicas. O erro que você recebeu informa que o pip não consegue encontrar uma parte necessária da biblioteca de consultas do PostgreSQL. Possivelmente isso ocorre porque você o instalou em um local não padrão para o seu sistema operacional e é por isso que a mensagem sugere o uso da opção --pg-config.
Mas um motivo mais comum é que você não tem o libpq instalado. Isso geralmente acontece em máquinas nas quais você NÃO possui o servidor PostgreSQL instalado porque deseja executar apenas aplicativos clientes, não o próprio servidor. Cada sistema operacional / distribuição é diferente; por exemplo, no Debian / Ubuntu, você precisa instalar o libpq-dev. Isso permite que você compile e vincule o código à biblioteca de consultas do PostgreSQL.
A maioria das respostas também sugere a instalação de uma biblioteca de desenvolvimento Python. Seja cuidadoso. Se você estiver usando apenas o Python padrão instalado pela sua distribuição, isso funcionará, mas se você tiver uma versão mais recente, poderá causar problemas. Se você criou o Python nesta máquina, já possui as bibliotecas de desenvolvimento necessárias para compilar as bibliotecas C / C ++ para interagir com o Python. Desde que você esteja usando a versão correta do pip, aquela instalada na mesma pasta bin que o binário python, você estará pronto. Não há necessidade de instalar a versão antiga.
fonte
Ativado
Debian/Ubuntu
:Primeiro instale e construa dependências do
psycopg2
pacote:Em seu ambiente virtual, compile e instale o
psycopg2
módulo:fonte
Eu já fiz isso antes, em que lugar do Windows você instala primeiro a instalação básica do python.
Em seguida, você copia manualmente o psycopg2 instalado na instalação virtualenv.
Não é bonito, mas funciona.
fonte
venv
. Consegui instalar fora do ambiente virtual, sem problemas. Eu literalmente copiei esse arquivo do meu diretório da biblioteca de pacotes Python e colei dentro do mesmo dentro do diretóriovenv
. Meu palpite é que, porque minhas versões do Python são distribuições do Anaconda, que havia algo errado com o caminho que estava sendo assumido / usado.Além de instalar os pacotes necessários, eu também precisei adicionar manualmente o diretório bin do PostgreSQL ao PATH.
$vi ~/.bash_profile
Adicione
PATH=/usr/pgsql-9.2/bin:$PATH
antesexport PATH
.$source ~/.bash_profile
$pip install psycopg2
fonte
No Windows XP, você recebe esse erro se o postgres não estiver instalado ...
fonte
Instalei o Postgresql92 usando o repositório RedHat / CentOS no site de downloads da PG http://www.postgresql.org/download/linux/redhat/
Para obter o pg_config, tive que adicionar /usr/pgsql-9.2/bin ao PATH.
fonte
Antes de instalar o psycopg2, você precisará instalar o pacote python-dev.
Se você estiver trabalhando no Linux (e possivelmente em outros sistemas, mas não posso falar por experiência própria), precisará ter certeza de que versão exata do python está executando ao instalar o pacote dev.
Por exemplo, quando eu usei o comando:
Ainda encontrei o mesmo erro ao tentar
Como eu estou usando python 3.7, eu precisava usar o comando
Depois que fiz isso, não tive mais problemas. Obviamente, se você estiver no python versão 3.5, você alterará esse 7 para um 5.
fonte
sudo apt-get install python-x.x-dev
corrigiu o problema.Estou lutando com isso há dias e finalmente descobri como obter o comando "pip install psycopg2" para rodar em um virtualenv no Windows (executando o Cygwin).
Eu estava atingindo o "executável pg_config não encontrado". erro, mas eu já havia baixado e instalado o postgres no Windows. Também foi instalado no Cygwin; executando "what pg_config" no Cygwin forneceu "/ usr / bin / pg_config" e executando "pg_config" produziu resultados sãos - no entanto, a versão instalada com o Cygwin é:
VERSION = PostgreSQL 8.2.11
Isso não funcionará com a versão atual do psycopg2, que parece exigir pelo menos 9.1. Quando adicionei "c: \ Arquivos de Programas \ PostgreSQL \ 9.2 \ bin" ao meu caminho do Windows, o instalador do Cygwin pip conseguiu encontrar a versão correta do PostgreSQL e consegui instalar o módulo com sucesso usando o pip. (Provavelmente, é preferível usar a versão Cygwin do PostgreSQL, pois a versão nativa será executada muito mais rapidamente).
fonte
No Fedora 24: para Python 3.x
Ative seu ambiente virtual:
fonte
Psycopg2 depende das bibliotecas do Postgres. No Ubuntu, você pode usar:
Então:
fonte
Para usuários humildes do Windows, eles precisavam instalar o psycopg2 no link abaixo, basta instalá-lo em qualquer instalação do Python que você configurou. Ele colocará a pasta chamada "psycopg2" na pasta site-packages da sua instalação do python.
Depois disso, basta copiar essa pasta para o diretório de pacotes de sites do seu virtualenv e você não terá problemas.
aqui está o link que você pode encontrar o executável para instalar o psycopg2
http://www.lfd.uci.edu/~gohlke/pythonlibs/
fonte
No OpenSUSE 13.2, isso corrigiu:
fonte
Eu poderia instalá-lo em uma máquina Windows e usar o Anaconda / Spyder com python 2.7 através dos seguintes comandos:
Em seguida, para estabelecer a conexão com o banco de dados:
fonte
psql -l
, host localhost, porta padrão do banco de dados 5432, o usuário listado\du
quando você entra no psql e adivinha a senha.Nas distribuições básicas do Arch :
fonte
se o pip não estiver funcionando, você pode fazer o download do arquivo .whl aqui https://pypi.python.org/pypi/psycopg2 extraí-lo.
python setup.py install
fonte
No Ubuntu, só precisava do pacote dev do postgres:
* Testado em um virtualenv
fonte
No OSX 10.11.6 (El Capitan)
fonte
brew install postgresql PATH=$PATH:/usr/local/Cellar/postgresql/9.6.2/bin/ pip install psycopg2
No OSX com macports:
fonte
Eu estava tendo esse problema, o principal motivo foi com 2 versões iguais instaladas. Um pelo postgres.app e outro pelo HomeBrew.
Se você optar por manter apenas o aplicativo:
fonte
No macOS Mojave, verifique se a atualização mais recente do Command Line Tools 10.3 - que funcionou para mim - atualizou com o Software Update, a versão anterior do Command Line Tools no Mojave não funcionou para mim.
fonte
Tente isso em
Gentoo
:fonte
No Windows, é assim que funciona
No prompt de comando após a instalação do balão via pip no ambiente virtual, execute este comando
Verifique isto
fonte