Linux下安裝Python3.6及避坑指南
Python3的安裝
1.安裝依賴環(huán)境
Python3在安裝的過程中可能會用到各種依賴庫,所以在正式安裝Python3之前,需要將這些依賴庫先行安裝好。
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/
[圖片]
另外一種方式是通過wget直接下載,如以下命令:
wget https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tgz
3. 創(chuàng)建安裝目錄
安裝目錄可依個人喜好創(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
之后再編譯,然后再安裝:
make make install
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的啟動目錄添加進(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
改動完畢之后,按Esc,再輸入:wq進(jìn)行保存退出。
8. 檢查Python3及Pip3是否正??捎?/strong>
執(zhí)行如下命令(注意:V是大寫的V),如果看到的結(jié)果一致的話,說明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)
避坑指南
其實,對于Python3的安裝,網(wǎng)絡(luò)上有太多的帖子了,步驟其實都大同小異。但是,在真正動手安裝之后,或多或少都會遇到一些麻煩,特別是對新手而言。下面良許就列舉一些常見的坑:
坑1:configure: error: no acceptable C compiler found in $PATH
這個問題就比較簡單,就是缺少gcc編譯環(huán)境。將gcc安裝上即可:
yum install -y gcc
當(dāng)然除此之外,采用源碼安裝的方式也可以。
坑2:zipimport.ZipImportError: can't decompress data
這種問題就是因為缺少zlib 的相關(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
這個問題是因為在./configure過程中,如果沒有加上–with-ssl參數(shù)時,默認(rèn)安裝的軟件涉及到ssl的功能不可用,剛好pip3過程需要ssl模塊,而由于沒有指定,所以該功能不可用。解決辦法如下:
cd Python-3.6.2 ./configure --with-ssl make sudo make install
坑4:Multilib version problems
這個很明顯了,就是同一個庫有多個版本。把多余的版本刪除了就好。
首先查詢已有的版本(以openssl為例,沖突哪個查哪個)
# 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兩個版本的openssl,我們留下x86的版本即可:
rpm --erase --nodeps openssl-1.0.0-27.el6_4.2.i686
再更新一下openssl:
# yum update "openssl*"
再查詢一下openssl,問題解決!
# 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及避坑指南,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!
相關(guān)文章
Linux系統(tǒng)網(wǎng)卡設(shè)置教程
這篇文章主要介紹了Linux系統(tǒng)網(wǎng)卡的設(shè)置教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-06-06Centos 7下利用crontab定時執(zhí)行任務(wù)詳解
這篇文章主要給大家介紹了關(guān)于Centos 7下利用crontab定時執(zhí)行任務(wù)的相關(guān)資料,文中對crontab進(jìn)行了詳細(xì)的介紹,并給出了一些實例代碼供大家參考學(xué)習(xí),需要的朋友們下面跟著小編一起來學(xué)習(xí)學(xué)習(xí)吧。2017-06-06linux中g(shù)rub啟動引導(dǎo)程序的加密介紹
大家好,本篇文章主要講的是linux中g(shù)rub啟動引導(dǎo)程序的加密介紹,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽2021-12-12Linux通過配置靜態(tài)IP解決無法訪問網(wǎng)絡(luò)問題的教程詳解
Linux系統(tǒng)安裝成功之后只是單機無網(wǎng)絡(luò)狀態(tài),我們需要配置Linux靜態(tài)IP來確保服務(wù)器可以正常連接互聯(lián)網(wǎng),下面就跟隨小編一起學(xué)習(xí)一下如何配置靜態(tài)IP來解決無法訪問網(wǎng)絡(luò)的問題吧2023-11-11LNMP系列教程之 SSL安裝WordPress博客(程序下載與安裝)
在之前的文章中,老左已經(jīng)在VPS中添加了站點,然后我們就需要傳程序建站。我們可以利用WinSCP工具直接向我們的對應(yīng)的站點目錄中傳程序,然后添加數(shù)據(jù)庫安裝網(wǎng)站2012-09-09