在 Linux 上安裝
Linux的安裝,我們將使用任何發行版都能使用的方式:下載 tar ball (壓縮包) 並由原始碼編譯。
這個方法也適用於 macOS
首先,打開終端機,利用 wget
指令下載 Python tar ball:
$ wget https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tar.xz
這邊讀者也可以不使用
wget
,改從官網上點擊連結來下載 xz 原始碼。
接著用用 xz (壓縮工具) 解壓縮:
$ xz -d Python-3.6.1.tar.xz
最後將打包解 (tar) 開:
$ tar -xvf Python-3.6.1.tar
我們會得到一個名為 Python-3.6.1
的資料夾。
接著進入資料夾:
$ cd Python-3.6.1
透過標準的原始碼安裝步驟來設定和安裝:
- 組態設定
- 編譯
- 安裝
組態檔設定:
組態檔設定是在編譯前的重要動作,他是在確認編譯和安裝時的各種設定和選項,比如說系統的版本拉或是安裝的位置等等。
絕大多數的原始碼裡面都會有一個叫做 configure
的檔案,這是一個執行檔,負責進行組態檔設定。這個程式會自動判別系統中的環境並作出合適的設定(或利用使用預設的選項)。
如果我們想要自訂其中的選項,也可以在使用 configure
命令時利用選項指定環境的設定值:
$ ./configure --prefix=/usr/local
這邊我們給自訂 prefix
為 /usr/local
表示將 Python 安裝在指定的這個位置。
編譯
編譯是將原始碼轉為執行檔(binary)的重要步驟,通常我們的原始碼包裡面都會有寫好的 MAKEFILE
,這個檔案裡面寫好了編譯的和安裝的方法,我們透過 make
指令利用 MAKEFILE
自動進行編譯即可:
$ make
安裝
我們要將編譯完成的執行檔和程式庫資源放到系統的特定位置去,讓系統能夠順利地找到並使用他們,這就是安裝。
我們同樣利用 make
和 MAKEFILE
來進行安裝:
$ make altinstall # 加上 altinstall 是讓 make 指令知道現在要進行安裝而不是編譯
一般來說安裝會使用
make install
,在這裡我們使用make altinstall
來避免一些可怕的事情發生。
環境設定
完成後,Python 的執行檔便會是 /usr/local/bin/python3
了。
我們將系統預設的 Python(通常是 /usr/bin/python
)透過連結改為我們手動編譯的新版本:
$ sudo ln -sf /usr/local/bin/python3 /usr/bin/python
如果不想動到預設的 Python,我們也可以利用
alias
的方式來設定 python:$ alias python=/usr/local/bin/python3
最後我們一樣利用
$ python3 --version
Python 3.6.1
驗證一下就完成囉!