創用 CC 授權條款
除非另有註明,本網站的著作Fygul Hether製作,以創用CC 姓名標示-非商業性-禁止改作 4.0 國際 授權條款釋出。

2016年5月22日 星期日

Ubuntu 14.04安裝Python 3.5

如果升級16.04,Python也會升級到3.5版,就沒必用這裡說的安裝方式,不過若在未來,想裝更新的3.6版,這裡的作法,也許還是可適用。以下的作法主要是安裝到系統的,不是虛擬環境的作法。

第一種作法是使用PPA

這方式在某些方面而言,感覺上方便些。關於這個PPA的描述請見:Old and New Python Versions

加入PPA:


sudo add-apt-repository ppa:fkrull/deadsnakes
sudo apt-get update
sudo apt-get install python3.5
sudo apt-get install python3.5-dev
sudo apt-get install libncurses5-dev
至此,Python 3.5裝好了,不過還要裝新的pip,要調整Python 3的縺接到3.5版,裝好後再調回去3.4版,因為原有的有些應用還是用到3.4版,所以也千萬別刪除3.4版。

(不調鏈接,直接用python3.5裝pip,也是可以,會把舊版pip3換新,pip3就不見了,執行pip或pip3.5是一樣的。或者自己調整pip的鏈接。)

python 3鏈接指到3.5:


sudo mv /usr/bin/python3 /usr/bin/python3-old
sudo ln -s /usr/bin/python3.5 /usr/bin/python3

裝新版pip:


wget https://bootstrap.pypa.io/get-pip.py
sudo python3 get-pip.py
sudo pip3 install setuptools --upgrade

鏈接回原來:


sudo rm /usr/bin/python3
sudo mv /usr/bin/python3-old /usr/bin/python3
好了,這樣系統中就多了個3.5版可用。若想用python 3.5,就執行python3.5;要用pip就執行pip3.5。

參考:

第二種即由源碼編譯安裝

為了能順利編譯,要先裝一些必要套件:


sudo apt-get install build-essential
sudo apt-get install zlib1g-dev libbz2-dev libncurses5-dev libreadline6-dev libsqlite3-dev libssl-dev libgdbm-dev liblzma-dev
視情況,若有用到tk,也要裝tk-dev。

如果這些沒先裝,後面make會出現像以下的訊息:
The necessary bits to build these optional modules were not found:
_bz2                  _curses               _curses_panel
_dbm                  _gdbm                 _lzma
_sqlite3              _tkinter              readline

下載Python源碼檔案,並編譯:

wget https://www.python.org/ftp/python/3.5.1/Python-3.5.1.tgz
tar xzvf Python-3.5.1.tgz
cd Python-3.5.1.tgz
./configure
make
sudo make test
sudo make altinstall
這裡採用make altinstall而不是make install的原因請見Building Python。不做make test也可以。

安裝成功後,試試執行python3.5,剛剛解壓縮存放源碼的資料夾就可刪了。

安裝pip可參考上述,「裝新版pip」:

sudo python3.5 get-pip.py

參考:

沒有留言:

張貼留言