Raspberry Pi OSでのPythonバージョン管理を簡単に!pyenvの活用方法

みなさん、こんにちは。

Raspberry Pi で IoT システムを構築する際、Python は欠かせない言語です。

しかし、Raspberry Pi OS には Python 2 と Python 3 が同時にインストールされている場合があり、Python 3 でもバージョン間の互換性に悩むことがあります。

そこで、今回は pyenv を使って Raspberry Pi OS 上で Python のバージョンを統一的に管理する方法をご紹介します。

 


 

pyenvでPythonバージョン管理を行うメリット

  • 複数バージョンの同時管理:
    プロジェクトごとに異なる Python バージョンが必要な場合でも、pyenv を使えば簡単に切り替えが可能です。
     
  • OS依存の問題回避:
    OSに依存せず、必要なバージョンを個別にインストールできるため、開発環境がより柔軟になります。
     
  • 仮想環境との連携:
    pyenv と仮想環境ツールを組み合わせることで、プロジェクトごとに完全に独立した環境を作成できます。

 


 

pyenvのインストール手順

 

1. 必要なパッケージのインストール

まずはシステムを最新の状態に更新し、pyenv の依存パッケージをインストールします。ターミナルで以下のコマンドを実行してください。

sudo apt update && sudo apt upgrade
sudo apt install -y git openssl libssl-dev libbz2-dev libreadline-dev libsqlite3-dev

2. 公式リポジトリからpyenvをクローン

公式のpyenvリポジトリは以下のURLになります。ホームディレクトリ直下にクローンするには、次のコマンドを実行してください。

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

3. 環境変数の設定

pyenvを利用するために、環境変数を設定します。

~/.bashrc~/.profile に以下の内容を追加してください(シェルに応じてファイルを選択する必要がありますが、Raspberry Pi では bash ですので、bash で解説します)。

export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"

設定を反映させるために、以下のコマンドを実行します。

source ~/.bashrc

※ シェルがbash以外の場合(例: zsh)には、対応する設定ファイル(例: ~/.zshrc)に同様の記述を追加してください。

 


 

Pythonバージョンの管理方法

 

利用可能なバージョンの確認

インストール可能な Python バージョンを確認するには、以下のコマンドを実行します。

pyenv install --list

特定のバージョンのインストール

希望するバージョンをインストールするには、以下のコマンドを実行します。

pyenv install <version>

<version> にはインストールしたいバージョン番号を指定してください。

バージョンの設定

  • グローバル(システム全体)の設定:
    全体で使用するデフォルトの Python バージョンを設定します。
    pyenv global <version>
     
  • ローカル(プロジェクトごとの)設定:
    プロジェクトディレクトリ内でのみ有効なバージョンを設定するには、以下のコマンドを実行します。
    pyenv local <version>
     
  • シェル内でのみ有効な設定:
    現在のシェルセッションだけで有効にする場合は、以下のコマンドを実行します。
    pyenv shell <version>

 


 

まとめ

pyenvを活用することで、Raspberry Pi OS 上でも複数の Python バージョンを簡単に管理し、プロジェクトごとに最適なバージョンを使い分けることが可能です。

さらに、仮想環境ツールと組み合わせることで、より柔軟かつ独立した開発環境を構築できます。Python のバージョン管理にお悩みの方は、ぜひpyenvをお試しください。

 

本日も最後までお読みいただき、ありがとうございました。

それでは、よい IoT ライフを!

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

上部へスクロール