ssl模塊缺失表現(xiàn)為在python中執(zhí)行如下命令
import ssl
會(huì)報(bào)錯(cuò)。
在網(wǎng)上一查,是因?yàn)闆]有安裝好openssl, 于是參照https://blog.csdn.net/xiaoqingshe0716/article/details/84886976 完成了openssl的源碼安裝。安裝完成后,openssl的安裝位置在
/usr/local/openssl
在終端輸入
openssl version -a
檢測(cè)安裝是否成功,并獲取相關(guān)信息。
完成之后,需要重現(xiàn)編譯安裝python3.6
參照鏈接:
https://www.cnblogs.com/kaishirenshi/p/9894529.html
關(guān)鍵步驟在于:
# cd Python-3.6.8
# ./configure --prefix=/usr/local/python3.6
# make && make install
如此安裝完成了之后,運(yùn)行python3.6 輸入
import ssl
仍然報(bào)錯(cuò)。
這句話只是為了檢測(cè)ssl是否安裝成功。其實(shí)能不能import ssl 并不關(guān)鍵,重要的是,如果不能import ssl,我們?cè)谑褂胮ip 安裝庫(kù)的時(shí)候,就會(huì)報(bào)錯(cuò)了,會(huì)說ssl module in python is not availabel.
在網(wǎng)上搜索嘗試了很多辦法仍無效。
例如
./configure --prefix=/usr/local/python3.6 --with--ssl
,
./configure --prefix=/usr/local/python3.6 --with-ssl=/usr/local/openssl
,
./configure --prefix=/usr/local/python3.6 --with-openssl=/usr/local/openssl
等等,什么花招都試過了,但都不行。
后看到https://blog.csdn.net/qq_35711921/article/details/88950213 文中說,
python3.6之后編譯源碼安裝不會(huì)自動(dòng)關(guān)聯(lián)ssl.需要在源碼安裝前,修改源碼目錄下/Modules/Setup和/Modules/Setup.dist 兩個(gè)文件。
去掉紅色區(qū)域前面的注釋,入下圖所示?!?duì)Setup.dist執(zhí)行同樣的操作。
但是在執(zhí)行
sudo make
的時(shí)候卻報(bào)錯(cuò)了
/usr/bin/ld: cannot find -lcrypto
……
參考鏈接https://blog.csdn.net/yasi_xi/article/details/8658191 去添加軟連接,
安裝說的做了,但仍然不能成功
import ssl
.
最后,沒有參照任何聯(lián)系
,仔細(xì)觀察了剛才修改的那兩個(gè)文件。
一想,我的
/usr/loca
下面并沒有ssl 啊,有的只是openssl ,于是,把文件修改成了這樣
這次再重新執(zhí)行python3.6 的源碼編譯安裝過程,在
sudo make
的時(shí)候沒有報(bào)錯(cuò)了。
最后安裝完成python3.6 之后,常識(shí)
import ssl
便成功了!
后記:這個(gè)問題折騰了我好久,費(fèi)了好多時(shí)間。也不知道是不是誰(shuí)都向我這樣,解決一個(gè)問題需要這么多時(shí)間的,太菜鳥了?!?
網(wǎng)上的參考鏈接很多,還是不能一股腦的跟著瞎操作啊,不然都是白費(fèi)時(shí)間,還是得結(jié)合自己系統(tǒng)環(huán)境的情況仔細(xì)觀察和思考才行。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元
