CentOS7安裝python3,以及解決沒有匯入_ssl模組的問題
阿新 • • 發佈:2018-12-14
第一步:更換yum的源,更換為國內的阿里雲,這是為了方便安裝python3的依賴
- 備份一下原本的yum源:
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
- 下載阿里雲的yum源【我下的是CentOS7的,如果需要其他版本,那麼只需要將下面的7改成5或6即可】【這一步需要能聯網】:
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
- 之後執行給install生成快取
yum makecache
第二步:直接通過yum來安裝python3
- 下載python3【我下的是3.6.2】:
wget "https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tgz"
- 解壓壓縮包:
tar -zxvf Python-3.6.2.tgz -C /tmp
- 進入目錄:
cd /tmp/Python-3.6.2/
- 安裝python3的依賴:
yum -y groupinstall "Development tools"
yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel
- 配置安裝,把Python3安裝到 /usr/local 目錄【這裡是可以自己選擇安裝到哪裡,注意,如果不先安裝依賴庫,則這裡會報錯】:
- ./configure --prefix=/usr/local/python3 【這個安裝路徑下面的bin有python3.6命令,後面後面要使用軟連結連結過來的位置。】
- 安裝python3 :
make
make install
- 檢查python命令:
- 進入目錄,檢視連結情況:
確認python3的軟連結是否成功,否則新建軟連結cd /usr/bin
ln -s /usr/local/python3/bin/python3.6 /usr/bin/python3
- 如果只需要使用python3這一條命令,下面的可以不看了,如果想要python這一條命令也指向python3,可以繼續。
- 檢測python的連線,python在/bin中:
cd /bin
如果需要修改python指向python3,則先刪除原來的軟連結檔案:ll |grep python
再新建python連結到python3:rm python
ln -s /usr/local/bin/python3.6 /bin/python
zipimport.ZipImportError: can't decompress data; zlib not available
安裝依賴zlib、zlib-devel
2、重新編譯安裝Python
- ./configure
- 編輯Modules/Setup檔案
- 找到下面這句,去掉註釋
- #zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz
- 重新編譯安裝:make & make install
第二次編輯 ,2018-10-24,由於直接yum安裝可能會出現python3沒有匯入_ssl模組的問題,出現這個問題最簡單的辦法的就是重灌Python3,最好使用安裝包安裝,使用yum安裝的沒有找到setup檔案。https://www.cnblogs.com/kimyeee/p/7250560.html
參考這篇文章,重灌
1 |
|
3.安裝python3
我個人習慣安裝在/usr/local/python3(具體安裝位置看個人喜好)
建立目錄:
1 |
|
解壓下載好的Python-3.x.x.tgz包(具體包名因你下載的Python具體版本不不同⽽而不不同,如:我下載的是Python3.6.1.那我這里就是Python-3.6.1.tgz)
1 |
|
4.進入解壓後的目錄,編譯安裝。
1 2 |
|
make
1 |
|
make install
1 |
|
只需要這些步驟即可,原文章下面的步驟不用再執行了