Pipenv: Pipenv ne parvient pas à installer psycopg2

Créé le 15 oct. 2019  ·  18Commentaires  ·  Source: pypa/pipenv

Description du problème

pipenv install psycopg2 échoué, même si les fichiers Pipfile et Pipfile.lock incluaient les entrées et les hachages des packages.

J'ai aussi remarqué que pip install psycopg2 also failed : https://gist.github.com/ye/bf1198cc15d9a6a177bae8bc0fc0aff9#file -pip-install-psycopg2-log

De plus, après l'échec de l'installation du pip, le pip à l'intérieur de l'environnement virtuel pipenv est bloqué.

$ pip -V                                                                                                                                                                                                                                                                                                                                                                                  
dyld: Library not loaded: @executable_path/../.Python
  Referenced from: /Users/ye/.venvs/server-D2-ixepO/bin/python3.7
  Reason: image not found
[1]    5466 abort      pip -V

Résultat attendu

Je pense qu'il devrait s'installer avec succès.

Résultat actuel

https://gist.github.com/ye/bf1198cc15d9a6a177bae8bc0fc0aff9

Étapes à reproduire

pipenv install psycopg2


$ pipenv --support

Version Pipenv : '2018.11.26'

Emplacement du tuyau : '/usr/local/lib/python3.7/site-packages/pipenv'

Emplacement Python : '/usr/local/opt/python/bin/python3.7'

Installations Python trouvées :

  • 3.7.4 : /Users/ye/.venvs/server-D2-ixepO/bin/python3
  • 3.7.4 : /usr/local/bin/python3
  • 3.7.4 : /usr/local/bin/python3.7m
  • 2.7.10 : /usr/bin/python
  • 2.7.10 : /usr/bin/pythonw
  • 2.7.10 : /usr/bin/python2.7

Informations PEP 508 :

{'implementation_name': 'cpython',
 'implementation_version': '3.7.4',
 'os_name': 'posix',
 'platform_machine': 'x86_64',
 'platform_python_implementation': 'CPython',
 'platform_release': '18.7.0',
 'platform_system': 'Darwin',
 'platform_version': 'Darwin Kernel Version 18.7.0: Tue Aug 20 16:57:14 PDT '
                     '2019; root:xnu-4903.271.2~2/RELEASE_X86_64',
 'python_full_version': '3.7.4',
 'python_version': '3.7',
 'sys_platform': 'darwin'}

Variables d'environnement système :

  • TERM_SESSION_ID
  • SSH_AUTH_SOCK
  • LC_TERMINAL_VERSION
  • Apple_PubSub_Socket_Render
  • COLORFGBG
  • ITERM_PROFILE
  • SQLITE_EXEMPT_PATH_FROM_VNODE_GUARDS
  • XPC_FLAGS
  • LANG
  • PWD
  • SHELL
  • SECURITYSESSIONID
  • TERM_PROGRAM_VERSION
  • TERM_PROGRAM
  • PATH
  • LC_TERMINAL
  • COLORTERM
  • COMMAND_MODE
  • TERM
  • HOME
  • TMPDIR
  • USER
  • XPC_SERVICE_NAME
  • LOGNAME
  • __CF_USER_TEXT_ENCODING
  • ITERM_SESSION_ID
  • SHLVL
  • OLDPWD
  • ZSH
  • GOPATH
  • PAGER
  • LESS
  • LSCOLORS
  • VIRTUAL_ENV_DISABLE_PROMPT
  • WORKON_HOME
  • PROJECT_HOME
  • VIRTUALENVWRAPPER_PYTHON
  • VIRTUALENVWRAPPER_VIRTUALENV
  • VIRTUALENVWRAPPER_PROJECT_FILENAME
  • VIRTUALENVWRAPPER_WORKON_CD
  • VIRTUALENVWRAPPER_SCRIPT
  • VIRTUALENVWRAPPER_HOOK_DIR
  • PIP_DISABLE_PIP_VERSION_CHECK
  • PYTHONDONTWRITEBYTECODE
  • PIP_PYTHON_PATH
  • PIPENV_ACTIVE
  • VIRTUAL_ENV
  • _
  • PIP_SHIMS_BASE_MODULE
  • PYTHONFINDER_IGNORE_UNSUPPORTED

Variables d'environnement spécifiques à Pipenv :

  • PIPENV_ACTIVE : 1

Variables d'environnement spécifiques au débogage :

  • PATH : /Users/ye/.venvs/server-D2-ixepO/bin:/Users/ye/.cargo/bin:/usr/local/sbin:/Users/ye/Library/Python/3.7/bin:/Users/ye/bin:/Users/ye/.cargo/bin:/usr/local/sbin:/usr/local/opt/gettext/bin:/Users/ye/Library/Python/3.7/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/go/bin:/Users/ye/.cargo/bin:/Users/ye/.poetry/bin
  • SHELL : /bin/zsh
  • LANG : en_US.UTF-8
  • PWD : /Users/ye/website/server
  • VIRTUAL_ENV : /Users/ye/.venvs/server-D2-ixepO

Contenu de Pipfile ('/Users/ye/website/server/Pipfile'):

[[source]]
name = "pypi"
url = "https://pypi.org/simple"
verify_ssl = true

[dev-packages]

[packages]
ipython = "*"
flask = "*"
sqlalchemy = "*"
flask-sqlalchemy = "*"
flask-admin = "*"
flask-login = "*"

[requires]
python_version = "3.7"

Contenu de Pipfile.lock ('/Users/ye/website/server/Pipfile.lock'):

{
    "_meta": {
        "hash": {
            "sha256": "39be307e901dd24694fdcd3df287b62eb1265d908ac3d91d854703c3e8acd897"
        },
        "pipfile-spec": 6,
        "requires": {
            "python_version": "3.7"
        },
        "sources": [
            {
                "name": "pypi",
                "url": "https://pypi.org/simple",
                "verify_ssl": true
            }
        ]
    },
    "default": {
        "appnope": {
            "hashes": [
                "sha256:5b26757dc6f79a3b7dc9fab95359328d5747fcb2409d331ea66d0272b90ab2a0",
                "sha256:8b995ffe925347a2138d7ac0fe77155e4311a0ea6d6da4f5128fe4b3cbe5ed71"
            ],
            "markers": "sys_platform == 'darwin'",
            "version": "==0.1.0"
        },
        "backcall": {
            "hashes": [
                "sha256:38ecd85be2c1e78f77fd91700c76e14667dc21e2713b63876c0eb901196e01e4",
                "sha256:bbbf4b1e5cd2bdb08f915895b51081c041bac22394fdfcfdfbe9f14b77c08bf2"
            ],
            "version": "==0.1.0"
        },
        "click": {
            "hashes": [
                "sha256:2335065e6395b9e67ca716de5f7526736bfa6ceead690adf616d925bdc622b13",
                "sha256:5b94b49521f6456670fdb30cd82a4eca9412788a93fa6dd6df72c94d5a8ff2d7"
            ],
            "version": "==7.0"
        },
        "decorator": {
            "hashes": [
                "sha256:86156361c50488b84a3f148056ea716ca587df2f0de1d34750d35c21312725de",
                "sha256:f069f3a01830ca754ba5258fde2278454a0b5b79e0d7f5c13b3b97e57d4acff6"
            ],
            "version": "==4.4.0"
        },
        "flask": {
            "hashes": [
                "sha256:13f9f196f330c7c2c5d7a5cf91af894110ca0215ac051b5844701f2bfd934d52",
                "sha256:45eb5a6fd193d6cf7e0cf5d8a5b31f83d5faae0293695626f539a823e93b13f6"
            ],
            "index": "pypi",
            "version": "==1.1.1"
        },
        "flask-admin": {
            "hashes": [
                "sha256:ca0be6ec11a6913b73f656c65c444ae5be416c57c75638dd3199376ce6bc7422"
            ],
            "index": "pypi",
            "version": "==1.5.3"
        },
        "flask-login": {
            "hashes": [
                "sha256:c815c1ac7b3e35e2081685e389a665f2c74d7e077cb93cecabaea352da4752ec"
            ],
            "index": "pypi",
            "version": "==0.4.1"
        },
        "flask-sqlalchemy": {
            "hashes": [
                "sha256:0078d8663330dc05a74bc72b3b6ddc441b9a744e2f56fe60af1a5bfc81334327",
                "sha256:6974785d913666587949f7c2946f7001e4fa2cb2d19f4e69ead02e4b8f50b33d"
            ],
            "index": "pypi",
            "version": "==2.4.1"
        },
        "ipython": {
            "hashes": [
                "sha256:c4ab005921641e40a68e405e286e7a1fcc464497e14d81b6914b4fd95e5dee9b",
                "sha256:dd76831f065f17bddd7eaa5c781f5ea32de5ef217592cf019e34043b56895aa1"
            ],
            "index": "pypi",
            "version": "==7.8.0"
        },
        "ipython-genutils": {
            "hashes": [
                "sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8",
                "sha256:eb2e116e75ecef9d4d228fdc66af54269afa26ab4463042e33785b887c628ba8"
            ],
            "version": "==0.2.0"
        },
        "itsdangerous": {
            "hashes": [
                "sha256:321b033d07f2a4136d3ec762eac9f16a10ccd60f53c0c91af90217ace7ba1f19",
                "sha256:b12271b2047cb23eeb98c8b5622e2e5c5e9abd9784a153e9d8ef9cb4dd09d749"
            ],
            "version": "==1.1.0"
        },
        "jedi": {
            "hashes": [
                "sha256:786b6c3d80e2f06fd77162a07fed81b8baa22dde5d62896a790a331d6ac21a27",
                "sha256:ba859c74fa3c966a22f2aeebe1b74ee27e2a462f56d3f5f7ca4a59af61bfe42e"
            ],
            "version": "==0.15.1"
        },
        "jinja2": {
            "hashes": [
                "sha256:74320bb91f31270f9551d46522e33af46a80c3d619f4a4bf42b3164d30b5911f",
                "sha256:9fe95f19286cfefaa917656583d020be14e7859c6b0252588391e47db34527de"
            ],
            "version": "==2.10.3"
        },
        "markupsafe": {
            "hashes": [
                "sha256:00bc623926325b26bb9605ae9eae8a215691f33cae5df11ca5424f06f2d1f473",
                "sha256:09027a7803a62ca78792ad89403b1b7a73a01c8cb65909cd876f7fcebd79b161",
                "sha256:09c4b7f37d6c648cb13f9230d847adf22f8171b1ccc4d5682398e77f40309235",
                "sha256:1027c282dad077d0bae18be6794e6b6b8c91d58ed8a8d89a89d59693b9131db5",
                "sha256:24982cc2533820871eba85ba648cd53d8623687ff11cbb805be4ff7b4c971aff",
                "sha256:29872e92839765e546828bb7754a68c418d927cd064fd4708fab9fe9c8bb116b",
                "sha256:43a55c2930bbc139570ac2452adf3d70cdbb3cfe5912c71cdce1c2c6bbd9c5d1",
                "sha256:46c99d2de99945ec5cb54f23c8cd5689f6d7177305ebff350a58ce5f8de1669e",
                "sha256:500d4957e52ddc3351cabf489e79c91c17f6e0899158447047588650b5e69183",
                "sha256:535f6fc4d397c1563d08b88e485c3496cf5784e927af890fb3c3aac7f933ec66",
                "sha256:62fe6c95e3ec8a7fad637b7f3d372c15ec1caa01ab47926cfdf7a75b40e0eac1",
                "sha256:6dd73240d2af64df90aa7c4e7481e23825ea70af4b4922f8ede5b9e35f78a3b1",
                "sha256:717ba8fe3ae9cc0006d7c451f0bb265ee07739daf76355d06366154ee68d221e",
                "sha256:79855e1c5b8da654cf486b830bd42c06e8780cea587384cf6545b7d9ac013a0b",
                "sha256:7c1699dfe0cf8ff607dbdcc1e9b9af1755371f92a68f706051cc8c37d447c905",
                "sha256:88e5fcfb52ee7b911e8bb6d6aa2fd21fbecc674eadd44118a9cc3863f938e735",
                "sha256:8defac2f2ccd6805ebf65f5eeb132adcf2ab57aa11fdf4c0dd5169a004710e7d",
                "sha256:98c7086708b163d425c67c7a91bad6e466bb99d797aa64f965e9d25c12111a5e",
                "sha256:9add70b36c5666a2ed02b43b335fe19002ee5235efd4b8a89bfcf9005bebac0d",
                "sha256:9bf40443012702a1d2070043cb6291650a0841ece432556f784f004937f0f32c",
                "sha256:ade5e387d2ad0d7ebf59146cc00c8044acbd863725f887353a10df825fc8ae21",
                "sha256:b00c1de48212e4cc9603895652c5c410df699856a2853135b3967591e4beebc2",
                "sha256:b1282f8c00509d99fef04d8ba936b156d419be841854fe901d8ae224c59f0be5",
                "sha256:b2051432115498d3562c084a49bba65d97cf251f5a331c64a12ee7e04dacc51b",
                "sha256:ba59edeaa2fc6114428f1637ffff42da1e311e29382d81b339c1817d37ec93c6",
                "sha256:c8716a48d94b06bb3b2524c2b77e055fb313aeb4ea620c8dd03a105574ba704f",
                "sha256:cd5df75523866410809ca100dc9681e301e3c27567cf498077e8551b6d20e42f",
                "sha256:e249096428b3ae81b08327a63a485ad0878de3fb939049038579ac0ef61e17e7"
            ],
            "version": "==1.1.1"
        },
        "parso": {
            "hashes": [
                "sha256:63854233e1fadb5da97f2744b6b24346d2750b85965e7e399bec1620232797dc",
                "sha256:666b0ee4a7a1220f65d367617f2cd3ffddff3e205f3f16a0284df30e774c2a9c"
            ],
            "version": "==0.5.1"
        },
        "pexpect": {
            "hashes": [
                "sha256:2094eefdfcf37a1fdbfb9aa090862c1a4878e5c7e0e7e7088bdb511c558e5cd1",
                "sha256:9e2c1fd0e6ee3a49b28f95d4b33bc389c89b20af6a1255906e90ff1262ce62eb"
            ],
            "markers": "sys_platform != 'win32'",
            "version": "==4.7.0"
        },
        "pickleshare": {
            "hashes": [
                "sha256:87683d47965c1da65cdacaf31c8441d12b8044cdec9aca500cd78fc2c683afca",
                "sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56"
            ],
            "version": "==0.7.5"
        },
        "prompt-toolkit": {
            "hashes": [
                "sha256:46642344ce457641f28fc9d1c9ca939b63dadf8df128b86f1b9860e59c73a5e4",
                "sha256:e7f8af9e3d70f514373bf41aa51bc33af12a6db3f71461ea47fea985defb2c31",
                "sha256:f15af68f66e664eaa559d4ac8a928111eebd5feda0c11738b5998045224829db"
            ],
            "version": "==2.0.10"
        },
        "ptyprocess": {
            "hashes": [
                "sha256:923f299cc5ad920c68f2bc0bc98b75b9f838b93b599941a6b63ddbc2476394c0",
                "sha256:d7cc528d76e76342423ca640335bd3633420dc1366f258cb31d05e865ef5ca1f"
            ],
            "version": "==0.6.0"
        },
        "pygments": {
            "hashes": [
                "sha256:71e430bc85c88a430f000ac1d9b331d2407f681d6f6aec95e8bcfbc3df5b0127",
                "sha256:881c4c157e45f30af185c1ffe8d549d48ac9127433f2c380c24b84572ad66297"
            ],
            "version": "==2.4.2"
        },
        "six": {
            "hashes": [
                "sha256:3350809f0555b11f552448330d0b52d5f24c91a322ea4a15ef22629740f3761c",
                "sha256:d16a0141ec1a18405cd4ce8b4613101da75da0e9a7aec5bdd4fa804d0e0eba73"
            ],
            "version": "==1.12.0"
        },
        "sqlalchemy": {
            "hashes": [
                "sha256:0f0768b5db594517e1f5e1572c73d14cf295140756431270d89496dc13d5e46c"
            ],
            "index": "pypi",
            "version": "==1.3.10"
        },
        "traitlets": {
            "hashes": [
                "sha256:70b4c6a1d9019d7b4f6846832288f86998aa3b9207c6821f3578a6a6a467fe44",
                "sha256:d023ee369ddd2763310e4c3eae1ff649689440d4ae59d7485eb4cfbbe3e359f7"
            ],
            "version": "==4.3.3"
        },
        "wcwidth": {
            "hashes": [
                "sha256:3df37372226d6e63e1b1e1eda15c594bca98a22d33a23832a90998faa96bc65e",
                "sha256:f4ebe71925af7b40a864553f761ed559b43544f8f71746c2d756c7fe788ade7c"
            ],
            "version": "==0.1.7"
        },
        "werkzeug": {
            "hashes": [
                "sha256:7280924747b5733b246fe23972186c6b348f9ae29724135a6dfc1e53cea433e7",
                "sha256:e5f4a1f98b52b18a93da705a7458e55afb26f32bff83ff5d19189f92462d65c4"
            ],
            "version": "==0.16.0"
        },
        "wtforms": {
            "hashes": [
                "sha256:0cdbac3e7f6878086c334aa25dc5a33869a3954e9d1e015130d65a69309b3b61",
                "sha256:e3ee092c827582c50877cdbd49e9ce6d2c5c1f6561f849b3b068c1b8029626f1"
            ],
            "version": "==2.2.1"
        }
    },
    "develop": {}
}

triage

Commentaire le plus utile

L'exportation de certains drapeaux selon ce fil a fonctionné pour moi !

export LDFLAGS="-L/usr/local/opt/openssl/lib" export CPPFLAGS="-I/usr/local/opt/openssl/include"

Tous les 18 commentaires

Pas un problème lié à pipenv

solution de contournement:

  1. Purger le virtualenv de pipenv --rm
  2. Installer la version binaire : pipenv install psycopg2-binary

J'ai un problème similaire sur macOS Mojave 10.14.4.

pipenv install psycopg2 échoue
Cependant, pipenv run pip install psycopg2 installe avec succès psycopg2

^ En développant @robertsutherland, je devais exécuter pipenv run pip install psycopg2-binary

@HashRocketSyntax
Cela semble très mauvais, car lorsque nous utilisons le pipenv, nous voulons enregistrer les deps, si pipenv run pip install psycopg2-binary , il n'y a rien à enregistrer dans Pipfile/Pipfile.lock.

en essayant pipenv install psycopg2-binary place.

si cela ne fonctionne pas, vous (tout le monde) devriez considérer les bogues de pipenv (et le risque de non-libération de longue date) et les avantages de pipenv, puis, décider de passer à un autre outil (pip-tools/poetry/ou même raw requirements.txt) ou continuez à utiliser cet outil

@menghuu qui n'a pas fonctionné malgré la vérification de toutes les configurations et chemins de l'ensemble homebrew + l'ajout de bibliothèques supplémentaires, c'est pourquoi j'ai eu recours à la tuyauterie run pip .

Pas un problème lié à pipenv

solution de contournement:

  1. Purger le virtualenv de pipenv --rm
  2. Installer la version binaire : pipenv install psycopg2-binary

@frostming pouvez-vous expliquer pourquoi ce n'est pas un problème lié à pipenv? Et pourquoi purger virtualenv le ferait fonctionner ?

Au fait, pipenv install psycopg2-binary n'a pas fonctionné pour moi.

$ pipenv --rm
Removing virtualenv (/Users/ye/.venvs/server-D2-ixepO)…
$ pipenv install psycopg2-binary
Creating a virtualenv for this project…
Pipfile: /Users/ye/dev/website-react/server/Pipfile
Using /usr/local/bin/python3 (3.7.4) to create virtualenv…
⠧ Creating virtual environment...Already using interpreter /usr/local/opt/python/bin/python3.7
Using base prefix '/usr/local/Cellar/python/3.7.4_1/Frameworks/Python.framework/Versions/3.7'
New python executable in /Users/ye/.venvs/server-D2-ixepO/bin/python3.7
Also creating executable in /Users/ye/.venvs/server-D2-ixepO/bin/python
Installing setuptools, pip, wheel...
done.
Running virtualenv with interpreter /usr/local/bin/python3

✔ Successfully created virtual environment!
Virtualenv location: /Users/ye/.venvs/server-D2-ixepO
Installing psycopg2-binary…
Adding psycopg2-binary to Pipfile's [packages]…
✔ Installation Succeeded
Pipfile.lock (49ca5b) out of date, updating to (2a2c3b)…
Locking [dev-packages] dependencies…
Locking [packages] dependencies…
✘ Locking Failed!
[pipenv.exceptions.ResolutionFailure]:   File "/usr/local/lib/python3.7/site-packages/pipenv/resolver.py", line 69, in resolve
[pipenv.exceptions.ResolutionFailure]:       req_dir=requirements_dir
[pipenv.exceptions.ResolutionFailure]:   File "/usr/local/lib/python3.7/site-packages/pipenv/utils.py", line 726, in resolve_deps
[pipenv.exceptions.ResolutionFailure]:       req_dir=req_dir,
[pipenv.exceptions.ResolutionFailure]:   File "/usr/local/lib/python3.7/site-packages/pipenv/utils.py", line 480, in actually_resolve_deps
[pipenv.exceptions.ResolutionFailure]:       resolved_tree = resolver.resolve()
[pipenv.exceptions.ResolutionFailure]:   File "/usr/local/lib/python3.7/site-packages/pipenv/utils.py", line 395, in resolve
[pipenv.exceptions.ResolutionFailure]:       raise ResolutionFailure(message=str(e))
[pipenv.exceptions.ResolutionFailure]:       pipenv.exceptions.ResolutionFailure: ERROR: ERROR: Could not find a version that matches google-cloud-python
[pipenv.exceptions.ResolutionFailure]:       No versions found
[pipenv.exceptions.ResolutionFailure]: Warning: Your dependencies could not be resolved. You likely have a mismatch in your sub-dependencies.
  First try clearing your dependency cache with $ pipenv lock --clear, then try the original command again.
 Alternatively, you can use $ pipenv install --skip-lock to bypass this mechanism, then run $ pipenv graph to inspect the situation.
  Hint: try $ pipenv lock --pre if it is a pre-release dependency.
ERROR: ERROR: Could not find a version that matches google-cloud-python
No versions found
Was https://pypi.org/simple reachable?
[pipenv.exceptions.ResolutionFailure]:       req_dir=requirements_dir
[pipenv.exceptions.ResolutionFailure]:   File "/usr/local/lib/python3.7/site-packages/pipenv/utils.py", line 726, in resolve_deps
[pipenv.exceptions.ResolutionFailure]:       req_dir=req_dir,
[pipenv.exceptions.ResolutionFailure]:   File "/usr/local/lib/python3.7/site-packages/pipenv/utils.py", line 480, in actually_resolve_deps
[pipenv.exceptions.ResolutionFailure]:       resolved_tree = resolver.resolve()
[pipenv.exceptions.ResolutionFailure]:   File "/usr/local/lib/python3.7/site-packages/pipenv/utils.py", line 395, in resolve
[pipenv.exceptions.ResolutionFailure]:       raise ResolutionFailure(message=str(e))
[pipenv.exceptions.ResolutionFailure]:       pipenv.exceptions.ResolutionFailure: ERROR: ERROR: Could not find a version that matches google-cloud-python
[pipenv.exceptions.ResolutionFailure]:       No versions found
[pipenv.exceptions.ResolutionFailure]: Warning: Your dependencies could not be resolved. You likely have a mismatch in your sub-dependencies.
  First try clearing your dependency cache with $ pipenv lock --clear, then try the original command again.
 Alternatively, you can use $ pipenv install --skip-lock to bypass this mechanism, then run $ pipenv graph to inspect the situation.
  Hint: try $ pipenv lock --pre if it is a pre-release dependency.
ERROR: ERROR: Could not find a version that matches google-cloud-python
No versions found
Was https://pypi.org/simple reachable?

J'ai entendu de bonnes choses à propos de Pipenv, alors j'ai pensé à essayer, mais j'ai rencontré le problème d'installation de psycopg2 décrit par d'autres ci-dessus. Je suppose que je suis de retour à venv et pip, mais j'essaierai à nouveau Pipenv dans quelques mois.

@ye Désolé pour la réponse tardive

La purge de virtualenv consiste à réparer toute rupture potentielle du venv.

Au fait, pipenv install psycopg2-binary n'a pas fonctionné pour moi.

Mais votre sortie concerne un autre package google-cloud-python , il n'y a pas de tel package sur PyPI, mais google-cloud est disponible.

J'ai utilisé pipenv install psycopg2 --sequential (en utilisant également --sequential avec update et sync ). Cela fonctionne pour moi, mais ce n'est pas tout à fait idéal.

Pas un problème lié à pipenv

solution de contournement:

  1. Purger le virtualenv de pipenv --rm
  2. Installer la version binaire : pipenv install psycopg2-binary

Depuis la page d'installation de psycopg :

Remarque Le package psycopg2-binary est destiné aux débutants pour commencer à jouer avec Python et PostgreSQL sans avoir à répondre aux exigences de construction.
Si vous êtes le mainteneur d'un paquet de publication dépendant de psycopg2, vous ne devriez pas utiliser 'psycopg2-binary' comme dépendance de module. Pour une utilisation en production, il est conseillé d'utiliser la distribution source.

Les développeurs de Psycopg ont déjà fait valoir qu'ils ne corrigeraient pas ce problème :
https://github.com/psycopg/psycopg2/issues/883

Quelqu'un a-t-il trouvé un moyen de résoudre ce problème sans exécuter d'étapes de construction supplémentaires ?

L'exportation de certains drapeaux selon ce fil a fonctionné pour moi !

export LDFLAGS="-L/usr/local/opt/openssl/lib" export CPPFLAGS="-I/usr/local/opt/openssl/include"

L'exportation de certains drapeaux selon ce fil a fonctionné pour moi !

`export LDFLAGS="-L/usr/local/opt/openssl/lib" export CPPFLAGS="-I/usr/local/opt/openssl/include"

Merci @vignzpie ! Tu l'as résolu pour moi :)

l'installation des dépendances l'a résolu pour moi

$ sudo apt-get install libpq-dev

l'installation des dépendances l'a résolu pour moi

$ sudo apt-get install libpq-dev

@pawelrubin mon problème a été déposé pour macOS et non pour Linux, comme vous pouvez le voir dans le journal : 'platform_system' : 'Darwin'.

@ye alors vous devriez prendre l'une des solutions suivantes :

  1. Utilisez plutôt le forfait psycopg2-binary
  2. Installez postgres via homebrew et exposez les fichiers d'en-tête source en modifiant les vars env LDFLAGS et CPPFLAGS.

@frostming oui, c'était dû à un problème de liaison avec la bibliothèque openssl lors de la compilation de psycopg2 à partir de la source. Merci.

1 et 2 fonctionnent maintenant après la mise à niveau vers python 3.8 et l'installation de psychopg2 version 2.8.5 mais 1 n'est pas une solution recommandée comme l' a souligné

L'exportation de certains drapeaux selon ce fil a fonctionné pour moi !

export LDFLAGS="-L/usr/local/opt/openssl/lib"
export CPPFLAGS="-I/usr/local/opt/openssl/include"

La solution de @vignzpie a fonctionné pour moi sur psycopg2 version 2.8.5

Si vous êtes ici sur Linux mint 19 Cinnamon 4.6.7
l'installation des dépendances l'a résolu pour moi:

  • sudo apt-get installer libpq-dev
  • pipenv exécuter pip installer psycopg2

l'installation des dépendances l'a résolu pour moi

$ sudo apt-get install libpq-dev

cela aide aussi

Cette page vous a été utile?
0 / 5 - 0 notes