Linux安裝最新版本Python

昨天新版的 Python 3.11 發佈了,官方說 3.11 比 3.10 快 10-60%,標準測試集快 1.25x,還有其它的方面的更新,那問題來了,Linux 下如何更新到最新版本。

1. 官網下載最新版本 Python 源碼

前往 Python官網 https://www.python.org/downloads/

download latest python

2. 解壓

解壓上一步下載的最新版本 Python

1tar -xvf Python-3.11.0.tar.xz

進入解壓後的目錄

1cd Python-3.11.0

3. 安裝依賴

我用的 Ubuntu,Debian 系對應的依賴爲:

1sudo apt-get install build-essential gdb lcov pkg-config \
2    libbz2-dev libffi-dev libgdbm-dev libgdbm-compat-dev liblzma-dev \
3    libncurses5-dev libreadline6-dev libsqlite3-dev libssl-dev \
4    lzma lzma-dev tk-dev uuid-dev zlib1g-dev

細心的讀者可能會有疑問,你怎麼知道依賴這些安裝包的,其實 Python 解壓後的源碼目錄中 README.rst 文件裏有提到相關依賴說明,安裝軟件先讀其說明文檔是個好習慣。如下圖所示,鏈接裏面有說明依賴包。

Python readme

4. 編譯

這一步沒什麼好解釋的,如果需要調整配置的話,可先運行 ./configure --help 查詢幫助信息。

1./configure
2make

值得一提的是,make 可接 j 參數,比如 4 核心 cpu 的系統,make -j4 可加快編譯速度

5. 安裝(重要步驟)

這一步很關鍵,因爲 Python 是 Linux 系統的重要軟件包,大部分情況下都不推薦直接 make install 安裝,這樣會覆蓋系統的基礎版本 Python,導致不必要的意外情況,強烈建議:

1make altinstall

make altinstall 會安裝到${prefix}/bin/python3,而 ${prefix}/bin/python3 是鏈接到 ${prefix}/bin/python3.X 的,這樣多版本可以和諧共存,互不侵犯。

6. 確認

仔細看上一步驟回顯的話,最新版本 Python 默認被安裝到/usr/local/bin/python3.11

1which python3.11
2/usr/local/bin/python3.11

7. 自己做個軟鏈接

爲了少敲幾個字符,可以做個軟鏈接,/usr/bin/python 存在的話,可先備份再刪除。 如今大部分系統默認升級到 python3,所以選擇鏈接到 python 而不是 python3

1sudo ln -s /usr/local/bin/python3.11 /usr/bin/python

8. 安裝 iPython

iPython 比 Python 自帶的解釋器好用

1python -m pip install ipython

9. 最終結果

檢查 Python 和 iPython,一切正常

1➜  ~ python
2Python 3.11.0 (main, Oct 25 2022, 11:03:14) [GCC 12.2.0] on linux
3Type "help", "copyright", "credits" or "license" for more information.
4>>>
5➜  ~ ipython
6Python 3.11.0 (main, Oct 25 2022, 11:03:14) [GCC 12.2.0]
7Type 'copyright', 'credits' or 'license' for more information
8IPython 8.5.0 -- An enhanced Interactive Python. Type '?' for help.

最後,Python 官方文檔也有一些相關說明,感興趣的可以看看:https://docs.python.org/3.11/using/unix.html#getting-and-installing-the-latest-version-of-python

最後修改於: Monday, October 16, 2023

相關文章:

翻譯: