【Python】Ubuntu24.04への複数バージョンのインストールと切り替え

Python

Ubuntu24.04へのPythonの複数バージョンのインストールと切り替え方法についてのメモです。

前提条件

  • Ubuntu24.04(WSL2)

インストールポリシーの確認

  • pythonのインストールにaptは使わない
  • 一般ユーザー権限で管理
  • インストールと切り替えにはpenvを使う
  • 「~/.pyenv/versions/」内に各バージョンをインストールする

ビルドに必要なライブラリのインストール

python本体のインストールにはaptを使いませんが、

pythonのビルドに必要なライブラリをaptでインストールしていきます。

OS毎のインストールの仕方はpyenvのリポジトリに英語の説明があります。

Home
Simple Python version management. Contribute to pyenv/pyenv development by creating an account on GitHub.

Ubuntuの場合は次のコマンドを実行します。

▼apt update

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

pyenvインストール

Pythonのバージョン管理ツールである「pyenv」をインストールしていきます。

GitHub - pyenv/pyenv: Simple Python version management
Simple Python version management. Contribute to pyenv/pyenv development by creating an account on GitHub.

複数のインストール方法がありますが、

今回はGithubリポジトリを「~/.pyenv」にcloneします。

git clone https://github.com/pyenv/pyenv.git ~/.pyenv

PATHを通すために「~/.bashrc」に追記します。

export PYENV_ROOT="$HOME/.pyenv"
command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"

現在のシェルに反映します。

source ~/.bashrc

pyenvが実行できるかを確認するためにバージョンを表示しておきましょう。

pyenv --version

インストール可能バージョンの一覧表示

次のコマンドで、インストール可能なバージョンがすべて表示されます。

pyenv install -l

バージョン指定でPythonインストール

執筆時点での最新バージョン「3.12.4」をインストールしていきます。

pyenv install 3.12.4

「3.11.9」と「3.10.14」もインストールしてみます。

pyenv install 3.11.9
pyenv install 3.10.14

インストール済みのバージョン一覧を確認してみます。

pyenv versions

バージョン切り替え

使用するバージョンの指定にはレベルが3段階あります。

  • global ・・・ユーザーの環境全体で使用するバージョンの指定
  • shell ・・・現在のシェルで使用するバージョンの指定
  • local ・・・現在のディレクトリ配下で使用するバージョンの指定

▼ global のバージョン指定

pyenv global 3.12.4

▼shell のバージョン指定

pyenv shell 3.11.9

▼local のバージョン指定

※「pyenv shell」を実行したシェルでは、「pyenv shell」の設定が優先されるので、「pyenv local」の指定は有効になりません。

※「pyenv local」は新しいシェルのターミナルを開いて実行しましょう。

pyenv local 3.10.14

local 指定の時は、そのディレクトリに「.python-version」というファイルが作成され、

その中にバージョン番号が記録されます。

「.python-version」を削除すると、local の指定を解除できます。

バージョン指定でPythonアンインストール

「3.10.14」をアンインストールしてみます。

pyenv uninstall 3.10.14

pyenvのアップデート

Githubリポジトリをcloneしたので、gitコマンドでpullすればOKです。

cd ~/.pyenv/
git pull

pyenvインストーラーでインストールした場合は

pyenv update

でいけます。

参考サイト

GitHub - pyenv/pyenv: Simple Python version management
Simple Python version management. Contribute to pyenv/pyenv development by creating an account on GitHub.
Ubuntu環境のPython - python.jp
Ubuntu には最初からPythonがインストールされており、そのまま利用可能です。 しかし、このPython は、 OS がさまざまな機能を提供するために使用しています。ユーザが勝手にパッケージを導入したりすると、 OS の安定性を損な...

コメント

タイトルとURLをコピーしました