web-dev-qa-db-fra.com

obtenir une erreur lors de l'installation de psycopg2 == 2.8.1

Très nouveau et essayant d'apprendre d'un tut, j'essaie d'installer des dépendances pour une Flask build et obtenir une erreur sur le terminal

J'ai les éléments suivants à installer

pipenv install flask flask-sqlalchemy psycopg2 flask-migrate flask-script Marshmallow flask-bcrypt pyjwt

J'ai vérifié que Python, PostSQL, pipenv sont installés et obtenez l'erreur suivante

An error occurred while installing psycopg2==2.8.1 --hash=sha256:3648afc2b4828a6e00d516d2d09a260edd2c1e3de1e0d41d99c5ab004a73d180 --hash=sha256:5329b4530e31f58e0eafc55e26bbef684509bcc3be41604e45c0b98c297dc722 --hash=sha256:7c1ae1669d11105a002f804bebd7432f8dc7473459aa405164c6b44a922decd5 --hash=sha256:8af13498e32a00d0a66e43b7491c15231b27ab964ee4d2277a4a2dbadfb2c482 --hash=sha256:9d5489867bd5f6d6c6191a4debd8de9a5c03a9608cce3f4d7133e29e6bd4ec27 --hash=sha256:a17bfc9faffcca0ad9360c1ad97ab61ede583aa954715e8e436ffd80046661ff --hash=sha256:b4a475ce87eabc0607e068a3c704d0aa0820237ed78d493b8e2d880eb73cd7fe --hash=sha256:c49d66e97affdc80d084b3b363f09f17db621418f0b8e0524b06c54959e2094d --hash=sha256:d13fbc3d533656cfdf094e13c1b0f40917b72813755ba780971ba0ce04280ac4 --hash=sha256:e1e4fe6e8ab9f9c7d28514d007f623999d2dd6b5b81069dd4f9d30dbdd6f7069 --hash=sha256:e67d60cb1a32f5fd8fcea935cf9efb1d1c26f96203b0ca2ae98c4c40ef8d8eac! Will try again.
6
GrahamMorbyDev

Si vous voyez une erreur comme celle-ci, vous devez installer libpq-dev

 Sudo apt-get install libpq-dev 

Erreur: b'Vous devez installer postgresql-server-dev-NN pour créer une extension côté serveur ou libpq-dev pour créer une application côté client.\N '",' ---------- ------------------------------ ',' ERREUR: commande erronée avec l'état de sortie 1: python setup.py Egg_info Vérifiez les journaux pour une sortie de commande complète. ']

1
shahid

J'ai dû recourir à la tuyauterie dans run pip

pipenv run pip install psycopg2-binary
1
HashRocketSyntax

Vous pouvez utiliser postgres . C'est une abstraction de grande valeur sur psycopg2. Et il utilise psycopg2-binary. Après pipenv install postgres Vous verrez les demandes suivantes dans la liste pip:

postgres        3.0.0                                                                                    
psycopg2-binary 2.8.4                                                                                    
psycopg2-pool   1.1

Le package binaire est un choix pratique pour le développement et les tests, mais en production, il est conseillé d'utiliser le package construit à partir de sources. N'utilisez donc pas uniquement psycopg2-binary dans la production.

# project/settings.py
DATABASES = {
  'default': {
  'ENGINE': 'Django.db.backends.postgresql',
  'NAME': 'postgres',
  'USER': 'postgres',
  'PASSWORD': 'postgres',
  'Host': 'db',
  'PORT': 5432
  }
}

EXTRA: Vous pouvez également utiliser psycopg2 version> 2.7 avec pipenv sous Windows sans aucun problème.

PS D:\> pipenv Shell
Creating a virtualenv for this project…
Pipfile: D:\Pipfile
Using c:\python\python37\python.exe (3.7.6) to create virtualenv…
[=== ] Creating virtual environment...created virtual environment CPython3.7.6.final.0-64 in 2093ms

  creator CPython3Windows(dest=D:\-_SHv_4lM, clear=False, global=False)

  seeder FromAppData(download=False, pip=latest, setuptools=latest, wheel=latest, via=copy, app_data_dir=C:\Users\parfeniukink\AppData\Local\Temp\tmpnwrfdufn\seed-app-data\v1)

  activators BashActivator,BatchActivator,FishActivator,PowerShellActivator,PythonActivator,XonshActivator

Successfully created virtual environment!
Virtualenv location: D:-_SHv_4lM
Creating a Pipfile for this project…
Launching subshell in virtual environment…
Windows PowerShell
Copyright (C) Microsoft Corporation. All rights reserved.

Try the new cross-platform PowerShell https://aka.ms/pscore6

PS D:\> pipenv install psycopg2
Installing psycopg2…
Adding psycopg2 to Pipfile's [packages]…
Installation Succeeded
Pipfile.lock not found, creating…
Locking [dev-packages] dependencies…
Locking [packages] dependencies…
Success!
Updated Pipfile.lock (59b6f6)!
Installing dependencies from Pipfile.lock (59b6f6)…
  ================================ 1/1 - 00:00:00
PS D:\> pip list
Package    Version
---------- -------
pip        20.0.2
psycopg2   2.8.4
setuptools 45.2.0
wheel      0.34.2
PS D:\>
0
parfeniukink