क्या pipenv को स्थापित करने के लिए psycopg2 प्राप्त करने के लिए कोई जादुई तरकीब है?

मेरा Pipfile ऐसा दिखता है:

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

[packages]
django = "==2.1.3"
psycopg2 = "*"

[dev-packages]

[requires]
python_version = "3.6"

मैंने pyscopg2-बाइनरी की स्थापना को जोड़ने और हटाने की कोशिश की है, लेकिन इससे कोई फर्क नहीं पड़ता। मैं ओएसएक्स 10.14.4 चलाने वाले मैक पर हूं।

pipenv install चलाने के बाद मुझे जो आउटपुट मिलता है वह यहां दिया गया है:

An error occurred while installing psycopg2==2.8.3 --hash=sha256:128d0fa910ada0157bba1cb74a9c5f92bb8a1dca77cf91a31eb274d1f889e001 --hash=sha256:227fd46cf9b7255f07687e5bde454d7d67ae39ca77e170097cdef8ebfc30c323 --hash=sha256:2315e7f104681d498ccf6fd70b0dba5bce65d60ac92171492bfe228e21dcc242 --hash=sha256:4b5417dcd2999db0f5a891d54717cfaee33acc64f4772c4bc574d4ff95ed9d80 --hash=sha256:640113ddc943522aaf71294e3f2d24013b0edd659b7820621492c9ebd3a2fb0b --hash=sha256:897a6e838319b4bf648a574afb6cabcb17d0488f8c7195100d48d872419f4457 --hash=sha256:8dceca81409898c870e011c71179454962dec152a1a6b86a347f4be74b16d864 --hash=sha256:b1b8e41da09a0c3ef0b3d4bb72da0dde2abebe583c1e8462973233fd5ad0235f --hash=sha256:cb407fccc12fc29dc331f2b934913405fa49b9b75af4f3a72d0f50f57ad2ca23 --hash=sha256:d3a27550a8185e53b244ad7e79e307594b92fede8617d80200a8cce1fba2c60f --hash=sha256:f0e6b697a975d9d3ccd04135316c947dd82d841067c7800ccf622a8717e98df1! Will try again.
  🐍   ▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉ 7/7 — 00:00:45
Installing initially failed dependencies…
[pipenv.exceptions.InstallError]:   File "/usr/local/Cellar/pipenv/2018.11.26_2/libexec/lib/python3.7/site-packages/pipenv/core.py", line 1874, in do_install
[pipenv.exceptions.InstallError]:       keep_outdated=keep_outdated
[pipenv.exceptions.InstallError]:   File "/usr/local/Cellar/pipenv/

............
...........

6m-darwin.so', '    ld: library not found for -lssl', '    clang: error: linker command failed with exit code 1 (use -v to see invocation)', "    error: command 'gcc' failed with exit status 1", '    ----------------------------------------', 'ERROR: Command "/Users/mdd/.local/share/virtualenvs/justfacts-2tIl3QYb/bin/python3 -u -c \'import setuptools, tokenize;__file__=\'"\'"\'/private/var/folders/jz/s0hyvf2n5yd8glg82gphcn9h0000gp/T/pip-install-f6uqfqa9/psycopg2/setup.py\'"\'"\';f=getattr(tokenize, \'"\'"\'open\'"\'"\', open)(__file__);code=f.read().replace(\'"\'"\'\\r\\n\'"\'"\', \'"\'"\'\\n\'"\'"\');f.close();exec(compile(code, __file__, \'"\'"\'exec\'"\'"\'))\' install --record /private/var/folders/jz/s0hyvf2n5yd8glg82gphcn9h0000gp/T/pip-record-k9xlsee0/install-record.txt --single-version-externally-managed --compile --install-headers /Users/mdd/.local/share/virtualenvs/justfacts-2tIl3QYb/bin/../include/site/python3.6/psycopg2" failed with error code 1 in /private/var/folders/jz/s0hyvf2n5yd8glg82gphcn9h0000gp/T/pip-install-f6uqfqa9/psycopg2/']

मैंने अनुशंसित आदेशों की कोशिश की है, जैसे कि pipenv clean, यहां तक ​​कि नई निर्देशिका में खरोंच से सब कुछ करने की कोशिश की और नहीं Pipfile, लेकिन कोई भाग्य नहीं। जब मैं psycopg2 को सीधे pipenv install pyscopg2 के माध्यम से स्थापित करने का प्रयास करता हूं, तो वही परिणाम।

3
AdjunctProfessorFalcon 27 जून 2019, 20:57

4 जवाब

सबसे बढ़िया उत्तर

हेमाइल की टिप्पणी पर विस्तार करते हुए, मुझे अंततः दौड़ने की आवश्यकता थी:

brew unlink openssl && brew link openssl --force

फिर पर्यावरण चर का एक गुच्छा सेट करें:

echo 'export PATH="/usr/local/opt/openssl/bin:$PATH"' >> ~/.zshrc
export LDFLAGS="-L/usr/local/opt/openssl/lib"
export CPPFLAGS="-I/usr/local/opt/openssl/include"

फिर Pipfile.lock हटाएं और सब कुछ फिर से इंस्टॉल करें, लेकिन शुरुआत में pipenv install --skip-lock के माध्यम से लॉक फ़ाइल निर्माण को छोड़ दें और फिर pipenv lock के साथ लॉक फ़ाइल को फिर से बनाएं।

5
AdjunctProfessorFalcon 15 जुलाई 2019, 20:15

मैं बस इस सटीक समस्या में भाग गया। मुझे अपना वर्तमान वर्चुअलएन्व हटाना पड़ा और इसे पुनर्निर्माण करना पड़ा।

pipenv --rm
rm Pipfile.lock
pipenv install
2
Shakakai 28 जून 2019, 22:03

आप इसे बनाने में असमर्थ हैं। इसके बजाय इसे स्थापित करने का प्रयास करें: https://pypi.org/project/psycopg2-binary/

0
Javier 27 जून 2019, 21:56

मेरे लिए, WSL2 के तहत चल रहे Ubuntu 20.04 को चलाने के लिए मुझे यहां निर्देशों का पालन करना था।

sudo apt install python3-dev libpq-dev

फिर मैं अपने परिवेश को प्रारंभ करने के लिए pipenv shell दौड़ा।

फिर चल रहा है: pip install psycopg2 बिना किसी समस्या के चला।

2
JoeManFoo 24 अगस्त 2020, 17:30