Raspberry Pi で virtualenv のインストール

目次
  1. 前準備
  2. git, cmake, wget, 7-Zip のインストール
  3. virtualenv, virtualenvwrapper のインストール
  4. Python の仮想環境の作成(virtualenvwrapper を使用)
  5. 作成した Python 仮想環境を使うとき

【サイト内の Raspberry Pi OS 関連ページ】

小型コンピュータ Raspberry Pi について: 別ページ »にまとめ

Raspberry Pi OS(Debian Bookworm 以降)では,システムの Python 環境が externally managed(OS のパッケージ管理下)として保護されている. そのため sudo pip install によるシステム全体へのパッケージ導入はエラーになる. Python パッケージは,Python の仮想環境の中に pip でインストールする.

前準備

Raspberry Pi OS のインストール

  1. Raspberry Pi Imager を用いて,Raspberry Pi OS を microSD カードに書き込む: 別ページ »で説明

    Raspberry Pi OS では既定のユーザ名・パスワードは設定されていない.Raspberry Pi Imager の設定画面で,ユーザ名パスワードを指定して書き込む.

  2. Raspberry Pi OS の初期設定: 別ページ »で説明

Raspberry Pi OS のシステム更新

最初に,Raspberry Pi OS のシステム更新を行う.

端末で,次のコマンドを実行する.

# パッケージリストの情報を更新
sudo apt update
sudo apt -y full-upgrade
sudo apt -y autoremove
sudo apt autoclean
sudo shutdown -r now

ファームウェアを更新する rpi-update は,開発中のファームウェアを導入するコマンドであり,通常のシステム更新では使用しない. ファームウェアも apt による更新の対象である.

git, cmake, wget, 7-Zip のインストール

端末で,次のコマンドを実行する.

# パッケージリストの情報を更新
sudo apt update
sudo apt -y install git cmake wget p7zip-full

virtualenv, virtualenvwrapper のインストール

virtualenv は,Python の仮想環境を作成するツールである. virtualenvwrapper は,作成した仮想環境の作成・切り替え・一覧表示を mkvirtualenv, workon, lsvirtualenv などのコマンドで行えるようにするツールである.

  1. 端末を開く
  2. virtualenv, virtualenvwrapper のインストール

    Raspberry Pi OS では,OS のパッケージとしてインストールする.

    sudo apt update
    sudo apt -y install virtualenv virtualenvwrapper
    
  3. virtualenvwrapper の設定

    仮想環境の置き場所(WORKON_HOME),使用する Python(VIRTUALENVWRAPPER_PYTHON)を設定し,virtualenvwrapper の設定ファイルを読み込む.

    export WORKON_HOME=$HOME/.virtualenvs
    export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
    source /usr/share/virtualenvwrapper/virtualenvwrapper.sh
    
  4. 端末を開くたびに設定が有効になるようにする

    ~/.bashrc に設定を追記する.

    touch ~/.bashrc
    echo -e "\n# virtualenv and virtualenvwrapper" >> ~/.bashrc
    echo 'export WORKON_HOME=$HOME/.virtualenvs' >> ~/.bashrc
    echo 'export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3' >> ~/.bashrc
    echo 'source /usr/share/virtualenvwrapper/virtualenvwrapper.sh' >> ~/.bashrc
    source ~/.bashrc
    

Python の仮想環境の作成(virtualenvwrapper を使用)

  1. 作成するPython の仮想環境の名前と,使用する Python を決めておく
    • Python の仮想環境の名前: py3env
    • 使用する Python: /usr/bin/python3(Raspberry Pi OS のシステム Python 3)
  2. 端末を開く
  3. virtualenv を使って,隔離された Python 3 環境を作る
    source /usr/share/virtualenvwrapper/virtualenvwrapper.sh
    mkvirtualenv --python=/usr/bin/python3 py3env
    lsvirtualenv
    
  4. Python 仮想環境が作成できたことを確認する
    source /usr/share/virtualenvwrapper/virtualenvwrapper.sh
    workon py3env
    python3 --version
    pip list
    

これにより,システムの Python 環境と,新規作成した Python 環境(名前は py3env)が共存する. 仮想環境の中では pip install でパッケージをインストールできる.

作成した Python 仮想環境を使うとき

端末を開き,次のコマンドを実行して,Python 仮想環境(名前は py3env)を有効にする.

workon py3env

仮想環境から抜けるときは,端末で,次のコマンドを実行する.

deactivate

virtualenvwrapper を使わない場合は,Python に標準で付属する venv でも同等の仮想環境を作成できる. 端末で,次のコマンドを実行する.

python3 -m venv $HOME/py3env
source $HOME/py3env/bin/activate