"पाइप 3 के साथ पैकेज स्थापित करते समय पायथन में ssl मॉड्यूल उपलब्ध नहीं है"


122

मैंने अपने स्थानीय मशीन पर Python 3.4 और Python 3.6 को सफलतापूर्वक स्थापित किया है, लेकिन मैं पैकेजों को स्थापित करने में असमर्थ हूं pip3

जब मैं निष्पादित करता हूं pip3 install <package>, मुझे निम्नलिखित एसएसएल संबंधित त्रुटि मिलती है :

pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
Collecting <package>
  Could not fetch URL https://pypi.python.org/simple/<package>/: There was a problem confirming the ssl certificate: Can't connect to HTTPS URL because the SSL module is not available. - skipping
  Could not find a version that satisfies the requirement <package> (from versions: )
No matching distribution found for <package>

मैं अपने Python3.x को कैसे स्थापित कर सकता हूं ताकि मैं पैकेज स्थापित कर सकूं pip install <package>?


4
क्या आपने स्पष्ट रूप से अपने ubuntu पर कमांड के साथ pip3 स्थापित किया है sudo apt-get install python3-pip??
सिद्धहैम

2
कृपया कोशिश करें pip3 install --upgrade pipऔर देखें कि आपको वही संदेश मिलता है या नहीं।
herry

जवाबों:


92

उबंटू में पायथन 3.6 और पिप 3 को स्थापित करने के लिए चरण-दर-चरण गाइड

  1. पायथन और एसएसएल के लिए आवश्यक पैकेज स्थापित करें: $ sudo apt-get install libreadline-gplv2-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev

  2. अपने घर निर्देशिका में https://www.python.org/ftp/python/ से "पायथन-3.6.8.tar.xz" डाउनलोड और अनज़िप करें

  3. उस निर्देशिका में टर्मिनल खोलें और चलाएँ: $ ./configure

  4. बनाएँ और स्थापित करें: $ sudo make && sudo make install

  5. इसके साथ पैकेज स्थापित करें: $ pip3 install package_name


4
पर "Raspbian जीएनयू / लिनक्स 9 (खिंचाव)" में काम किया
Oktay

2
धन्यवाद! मैं सर्कल में चारों ओर जा रहा था python3 Ubuntu 14.04 पर काम कर रहा है जब तक मुझे यह कमांड सूची नहीं मिली।
जेरोलोगन्सक्वेयर

2
मेरे उबंटू रक्षक।
निशान करनेवाला

6
इसने मेरे लिए काम किया। बहुत धन्यवाद। एक बात मैं अपने सिर को चारों ओर लपेट नहीं सकता था, लेकिन चरण 4 से शुरू क्यों नहीं किया और केवल एक बार "स्थापित करें? स्थापित करें"?
पैराफिलिक ऑस्ट्रिच

1
उबंटू बेवर में काम किया। मैं python3.7 और pip 19 का उपयोग कर रहा था, हमेशा SSL समस्या के साथ .....
eduardosufan

62

यदि आप Red Hat / CentOS पर हैं:

# To allow for building python ssl libs
yum install openssl-devel
# Download the source of *any* python version
cd /usr/src
wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tar.xz
tar xf Python-3.6.2.tar.xz 
cd Python-3.6.2

# Configure the build w/ your installed libraries
./configure

# Install into /usr/local/bin/python3.6, don't overwrite global python bin
make altinstall

अजगर 2.7 के लिए भी काम किया। बस जोड़ें और बनाने के लिए स्थापना रद्द करें
Jabda

अगर आपको virtualenv की आवश्यकता है, तो आपको sudo /usr/local/bin/pip3.7 को virtualenv इंस्टॉल करना होगा। इस उत्तर के लिए धन्यवाद!
टेक्नोक्रेट

उत्कृष्ट, मैं एक विरासत docker छवि के लिए अजगर 2.7.13 स्थापित करने में परेशानी हो रही थी openssl-develऔर चलाने की जरूरत थीpython2.7 get-pip.py
फेलिप

59

यदि आप विंडोज पर हैं और एनाकोंडा का उपयोग करते हैं तो यह मेरे लिए काम करता है:

मैंने कई अन्य समाधानों की कोशिश की, जो काम नहीं किए (पर्यावरण पथ परिवर्तनशील ...)

समस्या Windows सॉफ़्टवेयर सिस्टम में DLL के कारण हो सकती है (उदाहरण के लिए libcrypto-1_1-x64.dll या libssl-1_1-x64.dll या अन्य) अन्य सॉफ़्टवेयर द्वारा रखी गई।

फिक्स https://slproweb.com/products/Win32OpenSSL.html से ओपनएसएसएल स्थापित कर रहा था जो हाल के संस्करणों द्वारा डीएलएस को बदल देता है।


2
मैंने अभी इसे स्थापित किया है। मेरे सिस्टम पर स्थापित कार्यक्रमों की सूची में मेरे पास ओपनएसएसएल के तीन संस्करण हैं (दो 64 बिट संस्करण और एक 32 बिट संस्करण, हालांकि मैं 64 बिट सिस्टम पर हूं)। मुझे उन सभी को स्थापित करने के बारे में पता नहीं है, इसलिए मैंने उन्हें वहां छोड़ दिया।
जूर्गि

1
यह सबसे सीधा आगे का समाधान था जो मैंने बहुत खोज के बाद पाया है। ओपनएसएसएल त्रुटि के कारण पिप काम नहीं कर रहा था। स्पाइडर भी 'urllib.request' त्रुटि से "HTTPSHandler 'नाम आयात नहीं कर सकता। यह मेरे लिए विंडोज़ 10 अजगर 3 के लिए अलग किया गया था। लोगों की गुगली के समाधान के लिए उम्मीद से मदद करने के लिए टिप्पणी करते हुए, अधिकांश शीर्ष परिणाम पुराने और जटिल समाधान थे।
डिक मैकमैनस

8
यदि आप विंडोज पर हैं और एनाकोंडा का उपयोग करते हैं तो "पाइप इंस्टॉल" चलाने के लिए cmd के बजाय एनाकोंडा प्रॉम्प्ट का उपयोग करें। कोई अतिरिक्त DLL / SSL परिवर्तन की आवश्यकता नहीं होगी।
फातिहाकिसी

1
@ फतिहकिसी - बहुत बहुत धन्यवाद। इसने मेरी मदद की।
राजू पेनुमाता

2
मैं अपने कंप्यूटर को तोड़ने वाला था, बहुत सारे मशीनों और ओएस पर pycharm का इस्तेमाल किया था, लेकिन इस नई खिड़कियों पर मैंने एक एनाकोंडा स्थापित किया और ऐसा लगता है कि इसने पाइप को तोड़ दिया। मैं 2 घंटे के लिए ब्राउज़ कर रहा था, बहुत बहुत धन्यवाद। <3
बेनोइट एफ

35

मुझे OSX 10.11 पर इसी तरह की समस्या थी क्योंकि मेम्केच्ड स्थापित करने के कारण जो 3.6 के शीर्ष पर अजगर 3.7 स्थापित था।

चेतावनी: पाइप को उन स्थानों से कॉन्फ़िगर किया गया है, जिन्हें टीएलएस / एसएसएल की आवश्यकता होती है, हालांकि पायथन में एसएसएल मॉड्यूल उपलब्ध नहीं है।

खुलता है खुलने, पुनर्स्थापित करने, पथ बदलने .. और कुछ भी नहीं करने पर घंटे बिताए। पुराने संस्करण से वापस खुलने वाले संस्करण को बदल कर किया है:

brew switch openssl 1.0.2e

मैंने यह सुझाव इंटरनेट में कहीं नहीं देखा। आशा है कि यह किसी की सेवा करेगा।


3
मेरे पास MacOS कैटालिना 10.5.4 (बीटा) के साथ एक ही मुद्दा था, अब यह काम करता है। धन्यवाद!
पीटर रोज़मैन

14
मेरे लिए यह था brew switch openssl 1.0.2s। लेकिन वह यह था। आपने मुझे बचा लिया, धन्यवाद!
एंटोनियो

3
यह कोशिश कर रहा है, लेकिन यह मुझे बताता है कि खुलता है सेलर में एक संस्करण "1.0.2e" नहीं है। Opensl के सेलर में "1.0.2s" संस्करण नहीं है।
जेम्स पार्कर

एंटोनियो, जेम्स: आपके पास जो भी पुराना संस्करण है। मेरे तहखाने में 1.0.2e था इसलिए मैंने इसका इस्तेमाल किया। मुझे खुशी है कि इसने मदद की।
dsomnus

4
आपको बहुत - बहुत धन्यवाद! मेरे लिए, पुराने संस्करण पर opensslकाम करने का आपका समाधान : brew switch openssl 1.0.2t मैं मैक ओएस कैटालिना 10.15.3 पर हूं। आशा करता हूँ की ये काम करेगा।
viraj.kulkarni

25

MastaBlasta के उत्तर से सहमत हैं। मेरे लिए काम किया। मुझे विषय वर्णन के समान समस्या का सामना करना पड़ा।

पर्यावरण: मैकओएस सिएरा। और मैं Homebrew का उपयोग करता हूं।

मेरा समाधान:

  1. द्वारा Opensl को पुनर्स्थापित करें brew uninstall openssl; brew install openssl
  2. होमब्रे द्वारा दिए गए संकेतों के अनुसार, निम्नलिखित कार्य करें:

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

3
धन्यवाद, चाल है brew uninstall openssl, brew install openssl। मैंने कोशिश की brew reinstall opensslजिसका कोई असर नहीं हुआ। लेकिन स्थापना रद्द / स्थापित काम करता है!
जेफ तियान

6
दौड़ना पड़ाbrew uninstall --ignore-dependencies openssl
इलाद सिल्वर

16

उबंटू में, यह मदद कर सकता है:

cd Python-3.6.2
./configure --with-ssl
make
sudo make install

4
हमें वास्तव में इसके लिए स्रोत से अजगर का निर्माण क्यों करना है? क्या कोई समाधान नहीं है जो मानक अजगर वितरण के साथ काम करता है? मुझे लगता है कि इस मॉड्यूल को जोड़ने की उम्मीद है कि अजगर बाइनरी को ओवरराइड किए बिना संभव होगा, जिसे हम हमेशा आसानी से स्थापित नहीं किए गए लाइव सिस्टम पर संबंधित स्रोत स्थान के लिए जानते हैं।
Matanster

इस की कोशिश की, कुछ भी नहीं बदला
usernumber

9
मुझे यह कहते हुए एक चेतावनी मिलती है कि यह विकल्प मान्यता प्राप्त नहीं है
ma3oun

मुझे उन आज्ञाओं के लिए कई 'sudo' संलग्न करने पड़े, लेकिन उन्होंने काम किया जहाँ अन्य उत्तर विफल रहे!
पैको अबेटो


5

संभवत: लाइब्रेरी गुम होने के कारण समस्या।

अजगर 3.6 स्थापित करने से पहले, सुनिश्चित करें कि आप अजगर के लिए आवश्यक सभी पुस्तकालयों को स्थापित करते हैं।

$ sudo apt-get install build-essential checkinstall 
$ sudo apt-get install libreadline-gplv2-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev

Ubuntu और LinuxMint पर पायथन 3.6.0 को स्थापित करने के तरीके के बारे में अधिक जानकारी


5

यदि आप OSX पर हैं और स्रोत से अजगर का संकलन किया है:

शराब की भठ्ठी का उपयोग कर स्थापित करता है brew install openssl

सुनिश्चित करें कि निर्देशों का पालन करें काढ़ा आपको अपनी CPPFLAGSऔर स्थापित करने के बारे में देता है LDFLAGS। मेरे मामले में मैं openssl@1.1शराब बनाने के फार्मूले का उपयोग कर रहा हूं और मुझे अपने SSL पुस्तकालय को सही ढंग से लिंक करने के लिए अजगर निर्माण प्रक्रिया के लिए इन 3 सेटिंग्स की आवश्यकता है:

export LDFLAGS="-L/usr/local/opt/openssl@1.1/lib"
export CPPFLAGS="-I/usr/local/opt/openssl@1.1/include"
export PKG_CONFIG_PATH="/usr/local/opt/openssl@1.1/lib/pkgconfig"

मान लिया जाए कि पुस्तकालय उस स्थान पर स्थापित है।


अभी भी एक ही मुद्दा
गौरव पालीवाल

पाइप को फिर से स्थापित करने का प्रयास करें
mastaBlasta

@GauravPaliwal, @mastaBlasta: मेरे लिए, पुराने संस्करण पर opensslकाम करना: brew switch openssl 1.0.2t मैं मैक ओएस कैटालिना 10.15.3 पर हूं। आशा करता हूँ की ये काम करेगा।
viraj.kulkarni 20

5

मुझे विंडोज़ 10 पर एक ही समस्या का सामना करना पड़ा। मेरा बहुत विशिष्ट मुद्दा एनाकोंडा की मेरी स्थापना के कारण है। मैंने एनाकोंडा स्थापित किया और पथ के नीचे Path/to/Anaconda3/, वहाँ आता है python.exe। इस प्रकार, मैंने अजगर को बिल्कुल भी स्थापित नहीं किया क्योंकि एनाकोंडा में अजगर शामिल हैं। पैकेज स्थापित करने के लिए पाइप का उपयोग करते समय, मुझे वही त्रुटि रिपोर्ट मिली,pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.

समाधान निम्नलिखित था:

1) आप आधिकारिक वेबसाइट पर फिर से अजगर डाउनलोड कर सकते हैं ;

2) उस निर्देशिका में नेविगेट करें जहां "Python 3.7 (64-bit).lnk" स्थित है

3) import ssl औरexit()

4) cmd में टाइप करें, "Python 3.7 (64-bit).lnk" -m pip install tensorflow उदाहरण के लिए ।

यहां, आप सभी सेट हैं।


ठीक नहीं है, लेकिन निश्चित रूप से काम हो जाता है। कम से कम आपको लापता डिपो स्थापित करने में मदद करता है। मैंने अपनी स्थानीय मशीन पर जो महसूस किया, वह यह है कि मैंने अपने पैथ वेरिएंट में अजगर (यानी एनाकोंडा 2.7 64-बिट और पायथन 3.7 32-बिट)
एपी के

इस उत्तर पर सुधार करने के लिए, आप निरपेक्ष पथ को एक चर में संग्रहीत कर सकते हैं और इसे निम्नानुसार चला सकते हैं: cmd /c $py .\main.py( पॉवर्सशेल ) या cmd /c %py% .\main.py( डॉस )। यह आपके मौजूदा शेल में चलेगा और स्क्रिप्ट किया जा सकता है
AP।

5

यदि आप विंडोज पर हैं और एनाकोंडा का उपयोग करते हैं, तो आप cmd.exe के बजाय एनाकोंडा प्रॉम्प्ट में "पाइप इंस्टॉल ..." कमांड चलाने का प्रयास कर सकते हैं, जैसा कि उपयोगकर्ता willliu1995 यहां बताता है । यह मेरे लिए सबसे तेज़ समाधान था, इसके लिए अतिरिक्त घटकों की स्थापना की आवश्यकता नहीं है।


4

मैंने बहुत कोशिश की इस समस्या को हल करने के लिए से तरीकों और कोई भी हल नहीं किया। मैं इस समय विंडोज 10 पर हूं।

केवल एक चीज जो काम करती थी:

  • एनाकोंडा को अनइंस्टॉल करें
  • अजगर की स्थापना रद्द करें (मैं संस्करण 3.7.3 का उपयोग कर रहा था)
  • फिर से पायथन स्थापित करें (पाथ में स्वचालित रूप से जोड़ने के विकल्प को जांचने के लिए याद रखें)

फिर मैंने PIP का उपयोग करते हुए अपनी आवश्यकता के सभी कामों को डाउनलोड किया ... और काम किया!

पता नहीं क्यों, या अगर समस्या किसी तरह एनाकोंडा से संबंधित थी।


3

osx काढ़ा उपयोगकर्ताओं के लिए

मेरी समस्या मेरे अजगर स्थापना से संबंधित दिखाई दी और python3 और पाइप को फिर से स्थापित करके जल्दी से हल किया गया था। मुझे लगता है कि यह एक ओएस अपडेट के बाद दुर्व्यवहार करना शुरू कर दिया था, लेकिन कौन जानता है (इस समय मैं मैक ओएस 10.14.6 पर हूं)

brew reinstall python3 --force
# setup pip
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python3 get-pip.py
# installa pkg successfully 
pip install pandas

इस उत्तर के लिए धन्यवाद! मेरे मामले में, कैटालिना (10.15.3) को अपडेट करने के बाद समस्याएं शुरू हुईं, और मैंने पाया कि आपका पहला कदम brew reinstall python3 --forceपर्याप्त था: pipउसके बाद फिर से काम किया, मुझे फिर से स्थापित करने की आवश्यकता नहीं थी pip
पीएलएल

3

आप इन दोनों में से कोई एक कर सकते हैं:

  1. एनाकोंडा स्थापित करते समय, एनाकोंडा को पथ में जोड़ने के विकल्प का चयन करें ।

या

  1. एनाकोंडा के अपने इंस्टॉलेशन फ़ोल्डर से इन (पूर्ण) पथों को ढूंढें और उन्हें पर्यावरण चर में जोड़ें :

\एनाकोंडा

\ एनाकोंडा \ लाइब्रेरी \ MinGW-W64 \ बिन

\ एनाकोंडा \ लाइब्रेरी \ usr \ बिन

\ एनाकोंडा \ लाइब्रेरी \ बिन

\ एनाकोंडा \ स्क्रिप्ट

\ एनाकोंडा \ लाइब्रेरी

\ एनाकोंडा \ condabin

उपरोक्त पथों को "पाथ" सिस्टम वैरिएबल में जोड़ें और यह त्रुटि को और अधिक नहीं दिखाना चाहिए :)


1
एक विकल्प विशिष्ट 'एनाकोंडा प्रॉम्प्ट' का उपयोग करना है, जिसमें इन पर्यावरण चर को सही ढंग से स्थापित किया गया है।
तुआला

2

मैं एक ही मुद्दा रहा था और निम्नलिखित चरणों के साथ हल करने में सक्षम था:

sudo yum install -y libffi-devel
sudo yum install openssl-devel
cd /usr/src
sudo wget https://www.python.org/ftp/python/3.7.1/Python-3.7.1.tar.xz
sudo tar xf Python-3.7.1.tar.xz
cd Python-3.7.1
sudo ./configure --enable-optimizations
# Install into /usr/local/bin/python3.7, don't overwrite global python bin
sudo make altinstall

परमिट के आधार पर, आपको sudo की आवश्यकता नहीं हो सकती है।

Results:
Collecting setuptools
Collecting pip
Installing collected packages: setuptools, pip
Successfully installed pip-10.0.1 setuptools-39.0.1

अब चलना चाहिए

python3.7 -V 

तथा

pip3.7 -V

पैकेज स्थापित करते समय:

pip3.7 install pandas

या परमिट के आधार पर, आप --user ध्वज को भी जोड़ सकते हैं:

pip3.7 install pandas --user

2

sslमॉड्यूल ऑपरेशन Sytem (ओएस) सॉकेट (पहुँचने के लिए एक TLS / SSL आवरण है लिब / ssl.py )। तो कबssl मॉड्यूल उपलब्ध नहीं है, तो संभावना है कि आपके पास या तो ओएस ओपनएसएसएल लाइब्रेरी स्थापित नहीं है, या जब आप पायथन स्थापित करते हैं, तो वे लाइब्रेरी नहीं मिली थीं। मान लें कि यह एक बाद का मामला है (उर्फ: आपके पास पहले से ही ओपनएसएसएल स्थापित है, लेकिन पायथन को स्थापित करते समय वे सही ढंग से जुड़े नहीं हैं)।

मैं यह भी मानूंगा कि आप स्रोत से इंस्टॉल कर रहे हैं। यदि आप बाइनरी (यानी: .exe फ़ाइल), या पैकेज (Mac .dmg, या Ubuntu apt) से इंस्टॉल कर रहे हैं, तो बहुत कुछ नहीं है जो आप इंस्टॉल करने की प्रक्रिया के साथ कर सकते हैं।

अपने अजगर की स्थापना को कॉन्फ़िगर करने के चरण के दौरान, आपको यह निर्दिष्ट करने की आवश्यकता है कि लिंकिंग के लिए ओएस ओपनएसएसएल का उपयोग कहां किया जाएगा:

# python 3.8 beta
./configure --with-openssl="your_OpenSSL root"

तो आप अपनी स्थापित ओपनएसएसएल निर्देशिका कहां पाएंगे?

# ubuntu 
locate ssl.h | grep '/openssl/ssl.h'

/home/user/.linuxbrew/Cellar/openssl/1.0.2r/include/openssl/ssl.h
/home/user/envs/py37/include/openssl/ssl.h
/home/user/miniconda3/envs/py38b3/include/openssl/ssl.h
/home/user/miniconda3/include/openssl/ssl.h
/home/user/miniconda3/pkgs/openssl-1.0.2s-h7b6447c_0/include/openssl/ssl.h
/home/user/miniconda3/pkgs/openssl-1.1.1b-h7b6447c_1/include/openssl/ssl.h
/home/user/miniconda3/pkgs/openssl-1.1.1c-h7b6447c_1/include/openssl/ssl.h
/usr/include/openssl/ssl.h

आपका सिस्टम मेरी तुलना में अलग हो सकता है, लेकिन जैसा कि आप यहां देख रहे हैं कि मेरे पास कई अलग-अलग इंस्टॉल किए गए ओपन लाइब्रेरी हैं। इस लेखन के समय के अनुसार, अजगर 3.8 उम्मीदें 1.0.2 या 1.1 खुलता है:

अजगर को X509_VERIFY_PARAM_set1_host () के साथ ओपनएसएसएल 1.0.2 या 1.1 संगत लिबास की आवश्यकता होती है।

इसलिए आपको उन स्थापित पुस्तकालयों में से एक को सत्यापित करने की आवश्यकता होगी जिसका उपयोग आप लिंक करने के लिए कर सकते हैं, उदाहरण के लिए

/usr/bin/openssl version

OpenSSL 1.0.2g  1 Mar 2016
./configure --with-openssl="/usr"
make && make install

लाइब्रेरी को खोजने के लिए आपको कुछ प्रयास करने या नया स्थापित करने की आवश्यकता हो सकती है, जो आपके पायथन और आपके ओएस के लिए काम करेगा।


1

मैक का उपयोग करने के मामले में, मैंने हटा दिया /Applications/Python 3.7। क्योंकि मेरे पास पहले से ही Python3.7 थाbrew install python3

लेकिन यह संदेश का एक ट्रिगर था

पाइप को उन स्थानों से कॉन्फ़िगर किया गया है, जिन्हें टीएलएस / एसएसएल की आवश्यकता होती है, हालांकि पायथन में एसएसएल मॉड्यूल उपलब्ध नहीं है।

मैंने अपनी स्थिति में क्या किया

  1. मैंने macOS 64-बिट इंस्टॉलर को फिर से डाउनलोड किया , और इंस्टॉल किया।
  2. डबल क्लिक करें /Applications/Python3.6/Install Certificates.commandऔर /Applications/Python3.6/Update Shell Profile.command
  3. रीबूट मैक
  4. और मुझे यकीन नहीं है लेकिन संभवतः सफल होने के लिए योगदान दिया गया है pip.conf। देखें पाइप स्थापित विफल रहता है

1

मैं अंत में इस मुद्दे को हल करता हूं। ये मेरे env का विस्तार हैं:
स्थापित करने के लिए पायथन का संस्करण: 3.6.8
OS: Ubuntu 16.04.6 LTS
रूट एक्सेस: नहीं

कुछ लोग इंस्टॉल करने का सुझाव देते हैं libssl-dev, लेकिन यह मेरे लिए काम नहीं करता है। मैं इस लिंक का पालन करता हूं और मैंने इसे ठीक कर दिया है!
संक्षेप में, मैं OpenSSL (Opensl-1.1.1b.tar.gz) डाउनलोड, एक्सट्रैक्ट, निर्माण और इंस्टॉल करता हूं। फिर, मैं इस लिंक का पालन करते हुए.bashrc फ़ाइल को संशोधित करता हूं । इसके बाद, मैं पायथन-3.6.8.tgz डाउनलोड करता हूं और निकालता हूं। मैं SSL पथ को संशोधित करने के लिए मॉड्यूल / Setup.dist संपादित करता हूं (# 211 के आसपास की रेखाएं)। मैंने किया , और । अंतिम, मैं अपने को संशोधित करता हूं । सूचना है कि मैं शामिल नहीं है में ।
./configure --prefix=$HOME/opt/python-3.6.8makemake install.bashrc--enable-optimizations./configure


0

मैकोस पर, नीचे दिए गए कमांड के साथ अजगर 3.8.1 को कॉन्फ़िगर करें समस्या का समाधान होगा, मुझे लगता है कि यह लिनक्स पर भी काम करेगा।

./configure --enable-optimizations --with-openssl=/usr/local/opt/openssl@1.1/

अपने सिस्टम के आधार पर dir पैरामीटर को बदलें।


0

यदि आप OSX पर हैं और मामले में अन्य समाधान आपके (मेरे जैसे) काम नहीं करते हैं।

आप python3 की स्थापना रद्द करने और pip3 को अपग्रेड करने का प्रयास कर सकते हैं

brew uninstall --ignore-dependencies python3
pip3 install --upgrade pip   

यह मेरे लिए काम करता है;)


0

(विंडोज पर नहीं!)

इससे मुझे एक हफ्ते के लिए अपने बालों को फाड़ना पड़ा, इसलिए मुझे उम्मीद है कि इससे किसी को मदद मिलेगी

मैंने एनाकोंडा और / या जुपाइटर को फिर से स्थापित करने के लिए सब कुछ कम करने की कोशिश की।

सेट अप

  • AWS लिनक्स
  • मैन्युअल एनाकोंडा 3-5.3.0 स्थापित
  • पायथन 3 (3.7) एनाकोंडा (यानी ./anaconda3/bin/python) के अंदर चल रहा था
  • वहाँ भी था /usr/bin/pythonऔर /usr/bin/python3(लेकिन इनका उपयोग नहीं किया जा रहा था क्योंकि अधिकांश काम जुपिटर के टर्मिनल में किया गया था)

ठीक कर

जुपिटर के टर्मिनल में:

cp /usr/lib64/libssl.so.10 ./anaconda3/lib/libssl.so.1.0.0

cp /usr/lib64/libcrypto.so.10 ./anaconda3/lib/libcrypto.so.1.0.0

इससे क्या ट्रिगर हुआ?

इसलिए, यह सब तब तक काम कर रहा था जब तक कि मैंने कोशिश नहीं की conda install conda-forge

मुझे यकीन नहीं है कि क्या हुआ था, लेकिन कोंडा opensslबॉक्स पर अपडेट हो गया होगा (मैं अनुमान लगा रहा हूं) इसके बाद, सब कुछ टूट गया।

मूल रूप से, मेरे लिए अज्ञात, कोंडा ने ओपनसेल को अपडेट किया था, लेकिन किसी तरह पुराने पुस्तकालयों को हटा दिया और इसे बदल दिया libssl.so.1.1और libcrypto.so.1.1

पायथन 3, मुझे लगता है, देखने के लिए संकलित किया गया था libssl.so.1.0.0

अंत में, निदान की कुंजी यह थी:

python -c "import ssl; print (ssl.OPENSSL_VERSION)"

सुराग दिया library "libssl.so.1.0.0" not found

मैंने जो बड़ी धारणा बनाई है, वह यह है कि yumssl का condaसंस्करण संस्करण जैसा ही है , इसलिए केवल साझा किए गए ऑब्जेक्ट का नाम बदलने से काम हो सकता है, और यह किया।

मेरा दूसरा उपाय अजगर को फिर से संकलित करना, एनाकोंडा को फिर से स्थापित करना आदि था, लेकिन अंत में मुझे खुशी है कि मुझे इसकी आवश्यकता है।

आशा है कि यह आप लोगों की मदद करेगा।


0

pyenvमैक ओएस कैटालिना पर अजगर प्रतिष्ठानों का प्रबंधन करने के लिए उपयोग करने के मामले में , मुझे opensslपहले ब्रू के साथ स्थापित करना था और फिर उस रन के बाद pyenv install 3.7.8जो opensslहोमब्रे से उपयोग करके अजगर स्थापना का निर्माण करना प्रतीत होता था (इसे स्थापना आउटपुट में भी कहा गया था)। तब pyenv global 3.7.8मैं और मैं दूर थे।


0

मैं इस फ़ाइल में अजगर संस्करण को अपडेट करके इसे ठीक करने में सक्षम था। pyenv: संस्करण `3.6.5 'स्थापित नहीं है (/Users/taruntarun/.python-version द्वारा सेट) हालांकि मेरे पास नवीनतम संस्करण स्थापित था, मेरी कमान अभी भी पुराने संस्करण 3.6.5 का उपयोग कर रही थी

संस्करण 3.7.3 पर जा रहा है


-1

मुझे पिछले दो दिनों से यही समस्या थी और अभी इसे ठीक किया है।

मैंने काम नहीं किया के --trust-hostसाथ विकल्प का उपयोग करने की कोशिश की DigiCert_High_Assurance_EV_Root_CA.pemथी, मैं ssl मॉड्यूल को स्थापित नहीं कर सका (यह बताता है कि यह अजगर संस्करणों को 2.6 से अधिक के लिए स्थापित नहीं किया जा सकता है), $PIP_CERTचर सेट करना इसे या तो ठीक नहीं किया और मैंने स्थापित किया था libssl1.0.2और libssl1.0.0स्थापित किया था। यह भी उल्लेख के लायक है कि मेरे पास एक ~/.pip/pip.confफ़ाइल नहीं थी , और इसे बनाने से बग भी हल नहीं हुआ।

आखिरकार इसे हल किया, makeफिर से python3.6 स्थापित कर रहा था । वेबसाइट से पायथन-3.6.0.tgz डाउनलोड करें, configureफिर रन करें make, make testऔर make install। आशा है कि यह आप के लिए काम करता है।


2
क्षमा करें, लेकिन इस त्रुटि के कारण उन्हीं चरणों को दोहराने के लिए कहने के कारण इसे कम करना पड़ा। मुझे नहीं पता कि आप एक ही अजगर स्रोत पर एक ही कमांड चलाने की उम्मीद कैसे करेंगे और अलग-अलग परिणाम प्राप्त करेंगे!
जेमी लिंडसे

-1

अजगर प्रलेखन वास्तव में बहुत स्पष्ट है, और निर्देशों का पालन काम अन्य उत्तर जबकि मैं यहां पाया इस समस्या का समाधान नहीं किया गया था।

  1. सबसे पहले, उदाहरण के लिए, स्रोत 3.6.2 https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tar.xz के साथ स्रोत से अजगर 3.xx स्थापित करें

  2. सुनिश्चित करें कि आपके पास रनिंग द्वारा इंस्टॉल किए गए ओपनसेल हैं brew install openssl

  3. इसे अनज़िप करें और अजगर निर्देशिका में स्थानांतरित करें: tar xvzf Python-3.6.2.tar.xz && cd Python-3.6.2

  4. फिर अगर अजगर संस्करण <3.7 है, तो चलाएं

CPPFLAGS="-I$(brew --prefix openssl)/include" \ LDFLAGS="-L$(brew --prefix openssl)/lib" \ ./configure --with-pydebug 5. बारी-बारी से, भागो make -s -j2( -sमौन झंडा है, -j2अपनी मशीन को 2 काम करने के लिए कहता है)


j "नौकरियों" के लिए महामारी है जो कि समानांतर चलने वाली प्रक्रियाओं की संख्या है जो बिल्ड को चलाती है। के रूप में ध्वज के लिए, यह अभी भी चेतावनी आउटपुट करता है, लेकिन जानकारी / डिबग स्तर के अतिरिक्त शोर के बिना। इन झंडों का उपयोग अजगर डॉक्स निर्देशों में किया जाता है।
पल्सर

-1

मैं एक ही समस्या एक ubuntu14.04 मशीन पर python3.7 स्थापित करने की कोशिश कर रहा था। मुद्दा यह था कि मेरे PKG_CONFIG_PATH में और मेरे LD_LIBRARY_PATH में कुछ कस्टम फ़ोल्डर थे, जिन्होंने सिस्टम ओपनस् लाइब्रेरियों को खोजने के लिए अजगर निर्माण प्रक्रिया को रोका।

इसलिए उन्हें साफ़ करने की कोशिश करें और देखें कि क्या होता है:

export PKG_CONFIG_PATH=""
export LD_LIBRARY_PATH=""

2
यह वास्तव में किसी के दिन को बर्बाद कर देगा यदि उनके पास उन पर्यावरण चर में उपयोगी सामान है
matanster

-1

इसका नवीनतम उत्तर ठीक है, जैसा कि अब पायथन 3.8 का उपयोग नहीं करते हैं , केवल 3.7 या उससे कम का उपयोग करें, क्योंकि अधिकांश पुस्तकालय उपरोक्त त्रुटि के साथ स्थापित करने में विफल रहते हैं


जहाँ तक मुझे पता है कि अजगर ऑपरेटिंग सिस्टम के अंतर्निहित पैकेजों का उपयोग करता है। जैसी चीजें gcc, opensslऔर zlib। तो यह विशेष रूप से जब लिनक्स पर उपयोग किया जाता है, तो संकलन से पहले इन पूर्वापेक्षाओं को स्थापित करना महत्वपूर्ण है।
स्टीफन

@ surfer190 मैं खिड़कियों का उपयोग करता हूं, लेकिन आपने जो कहा वह दोनों मेरे लिए सच हो सकता है
उज्जू
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.