Python3的安裝
1.安裝依賴環(huán)境
Python3在安裝的過(guò)程中可能會(huì)用到各種依賴庫(kù),所以在正式安裝Python3之前,需要將這些依賴庫(kù)先行安裝好。
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
2. 下載Python3源代碼
下載Python3的源代碼有兩種方式,一種是在它的官網(wǎng)下載,網(wǎng)址如下:
https://www.python.org/downloads/source/
[圖片]
另外一種方式是通過(guò)wget直接下載,如以下命令:
wget https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tgz
3. 創(chuàng)建安裝目錄
安裝目錄可依個(gè)人喜好創(chuàng)建,比如在此創(chuàng)建在 /usr/local/python3 :
mkdir -p /usr/local/python3
4. 解壓源碼包
將第2步下載到的源碼包進(jìn)行解壓,命令為:
tar -zxvf Python-3.6.1.tgz
5. 編譯源碼
先進(jìn)入解壓后源碼包的目錄,再進(jìn)行配置:
cd Python-3.6.1
./configure --prefix=/usr/local/python3
之后再編譯,然后再安裝:
6. 建立Python3的軟鏈接
ln -s /usr/local/python3/bin/python3 /usr/bin/python3
7. 將/usr/local/python3/bin加入PATH
編輯bash_profile進(jìn)行修改環(huán)境變量:
vim ~/.bash_profile
在PATH變量下將Python3的啟動(dòng)目錄添加進(jìn)去:
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin:/usr/local/python3/bin
export PATH
改動(dòng)完畢之后,按Esc,再輸入:wq進(jìn)行保存退出。
8. 檢查Python3及Pip3是否正??捎?/strong>
執(zhí)行如下命令(注意:V是大寫的V),如果看到的結(jié)果一致的話,說(shuō)明Python3已經(jīng)成功安裝。
[alvin@VM_0_16_centos ~]$ python3 -V
Python 3.6.1
[alvin@VM_0_16_centos ~]$ pip3 -V
pip 9.0.1 from /usr/local/lib/python3.6/site-packages (python 3.6)
避坑指南
其實(shí),對(duì)于Python3的安裝,網(wǎng)絡(luò)上有太多的帖子了,步驟其實(shí)都大同小異。但是,在真正動(dòng)手安裝之后,或多或少都會(huì)遇到一些麻煩,特別是對(duì)新手而言。下面良許就列舉一些常見的坑:
坑1:configure: error: no acceptable C compiler found in $PATH
這個(gè)問(wèn)題就比較簡(jiǎn)單,就是缺少gcc編譯環(huán)境。將gcc安裝上即可:
yum install -y gcc
當(dāng)然除此之外,采用源碼安裝的方式也可以。
坑2:zipimport.ZipImportError: can't decompress data
這種問(wèn)題就是因?yàn)槿鄙賨lib 的相關(guān)工具包導(dǎo)致的,將相關(guān)依賴包裝上即可:
yum -y install zlib*
安裝之后再重新編譯源碼,即可解決。
坑3:pip3: Can't connect to HTTPS URL because the SSL module is not available
這個(gè)問(wèn)題是因?yàn)樵?/configure過(guò)程中,如果沒(méi)有加上–with-ssl參數(shù)時(shí),默認(rèn)安裝的軟件涉及到ssl的功能不可用,剛好pip3過(guò)程需要ssl模塊,而由于沒(méi)有指定,所以該功能不可用。解決辦法如下:
cd Python-3.6.2
./configure --with-ssl
make
sudo make install
坑4:Multilib version problems
這個(gè)很明顯了,就是同一個(gè)庫(kù)有多個(gè)版本。把多余的版本刪除了就好。
首先查詢已有的版本(以openssl為例,沖突哪個(gè)查哪個(gè))
# rpm -qa | grep openssl
openssl-devel-1.0.0-27.el6_4.2.x86_64
openssl-1.0.0-27.el6_4.2.x86_64
openssl-1.0.0-27.el6_4.2.i686
可以看到系統(tǒng)里安裝了openssl-1.0.0-27.el6_4.2.x86_64和openssl-1.0.0-27.el6_4.2.i686兩個(gè)版本的openssl,我們留下x86的版本即可:
rpm --erase --nodeps openssl-1.0.0-27.el6_4.2.i686
再更新一下openssl:
# yum update "openssl*"
再查詢一下openssl,問(wèn)題解決!
# rpm -qa | grep openssl
openssl-devel-1.0.1e-16.el6_5.7.x86_64
openssl-1.0.1e-16.el6_5.7.x86_64
總結(jié)
以上所述是小編給大家介紹的Linux下安裝Python3.6及避坑指南,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
如果你覺(jué)得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!