Ubuntuには、最初からPythonがインストールされています。
でも、そのPythonをそのまま使ってはいけません。
だから、それとは別であたらしいPythonをインストールするのが一般的です。
今回は、そのあたらしいPythonをインストールする方法を解説します。
本記事の内容
- デフォルトのPython
- あらたに別バージョンのPythonをインストール
それでは、上記に沿って解説していきましょう。
デフォルトのPython
最初に、現状確認から行います。
Ubuntuのバージョンは、以下。
$ cat /etc/lsb-release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=18.04 DISTRIB_CODENAME=bionic DISTRIB_DESCRIPTION="Ubuntu 18.04.5 LTS"
もちろん、アーキテクチャは64bit。
$ arch x86_64
本当なら、Ubuntu 20.04をインストールしたかったです。
でも、まだUbuntu 20.04をインストールできませんでした。
それは、利用しているVPSがそのような仕様だからです。
これは仕様なので仕方がありません。
(※現在は、Ubuntu 20.04に対応しているかもしれません)
そのVPSは、次の記事で説明しています。
まあ、安かったので仕方がありませんけどね。
そして、Ubuntu 18.04の場合、デフォルトでは以下のPythonがインストールされています。
$ python3 -V Python 3.6.9 $ which python3 /usr/bin/python3
このPython 3.6.9をそのまま使ってはダメということです。
確かに古いということもあります。
印象だけではなく、実際に古いです。
以下は、Pythonのサポート期限内にあるバージョン一覧となります。
バージョン | リリース日 | サポート期限 |
3.6 | 2016年12月23日 | 2021年12月 |
3.7 | 2018年6月27日 | 2023年6月 |
3.8 | 2019年10月14日 | 2024年10月 |
3.9 | 2020年10月5日 | 2025年10月 |
これによると、Python 3.6は2021年の12月にサポート期間が終了してしまいます。
古いから使ってはダメなのでしょうか?
いえ、このPythonを使うとOSの安定性を損なうことがあり得るのです。
だから、デフォルトのPythonを使ってはいけません。
デフォルトのPythonは、OSがさまざまな機能を提供するために使用されています。
つまり、OSとデフォルトのPythonには依存関係があるのです。
そんなPythonに、パッケージをドンドンと導入していったらどうなりますか?
答えは、言うまでもありませんね。
あらたに別バージョンのPythonをインストール
重要なので、間違わないでください。
バージョンアップ(アップグレード)ではなく、インストールです。
デフォルトのPythonは、OSとの依存関係を維持したまま存在し続けます。
そして、新たにインストールするPythonを私たちが利用していくことになります。
折角なので、最新バージョンをインストールしていきましょう。
2021年3月時点のPython最新バージョン(安定版)は、3.9.2です。
あたらしいPythonは、以下の流れでインストールしていきます。
- ビルド環境の準備
- ソースコードのダウンロード
- ビルド
それぞれを下記で説明します。
ビルド環境の準備
必要なツールをインストールします。
$ sudo apt update $ sudo apt install build-essential libbz2-dev libdb-dev \ libreadline-dev libffi-dev libgdbm-dev liblzma-dev \ libncursesw5-dev libsqlite3-dev libssl-dev \ zlib1g-dev uuid-dev tk-dev
最近は、ビルドしてインストールすることなんてほとんどありません。
ほとんど「apt」コマンドでインストールできますからね。
ソースコードのダウンロード
Python Japanのダウンロードページ
https://pythonlinks.python.jp/ja/index.html
Python本家(英語)のダウンロードページが、かなりわかりにくいです。
そこで、Python Japanがわざわざ用意してくれたのが、上記ページということになります。
上記ページから、「Python-3.9.2.tar.xz」をダウンロードします。
追記 2021年4月12日
2021年4月4日に3.9.4がリリースされています。
$ wget https://www.python.org/ftp/python/3.9.2/Python-3.9.2.tar.xz
ダウンロードしたファイルは、次のコマンドで解凍しておきます。
$ tar xJf Python-3.9.2.tar.xz
ビルド
次のコマンドを実行します。
$ cd Python-3.9.2 $ ./configure $ make $ sudo make install
最後に次のような表示で終われば成功です。
各パッケージのバージョンは、各時期で異なるでしょう。
Installing collected packages: setuptools, pip Successfully installed pip-20.2.3 setuptools-49.2.1
インストールが上手くいかない場合は、再度上記コマンドを実行します。
$ make $ sudo make install
そうすれば、上手くいくことがあります。
ビルドって、そんなもんです。
まとめ
インストールできたかを確認しましょう。
手っ取り早いのは、いったんサーバーからログアウトします。
再度ログインして、次のコマンドを実行。
$ python3 -V Python 3.9.2 $ which python3 /usr/local/bin/python3
Pythonのバージョンが、3.6.9から3.9.2に変わりました。
動作確認もOKです。
なお、既存のPython 3.6.9は/usr/bin/python3として存在したままです。
だから、決してPython 3.6.9が消えたわけではありません。