2025/02/24

Raspberry Pi 5 にpythonの仮想環境を導入する

こんにちは、Akira(Type-EDGE)です。

Raspberry Pi 5 でpython開発をしようと思ってライブラリを導入したら、以下のエラーが発生しました。

pip3 install python-dotenv

error: externally-managed-environment

× This environment is externally managed
╰─> To install Python packages system-wide, try apt install
    python3-xyz, where xyz is the package you are trying to
    install.
    
    If you wish to install a non-Debian-packaged Python package,
    create a virtual environment using python3 -m venv path/to/venv.
    Then use path/to/venv/bin/python and path/to/venv/bin/pip. Make
    sure you have python3-full installed.
    
    For more information visit http://rptl.io/venv

note: If you believe this is a mistake, please contact your Python installation or OS distribution provider. You can override this, at the risk of breaking your Python installation or OS, by passing --break-system-packages.
hint: See PEP 668 for the detailed specification.

今回の記事はこのエラーを読み解いて、Rasberry Piにpythonライブラリを導入できるようにします。

結論:pythonの仮想環境を導入する

どの階層でも良いので、ssh接続をして以下のコマンドを実行してください。
mypyに仮想環境が作られるので、作成したい名前を設定して下さいね。

python3 -m venv ~/mypy

pythonの仮想環境が必要な理由とメリット

Pythonを実行する際には、仮想環境を使用することが推奨されます。

プロジェクトごとにPythonのバージョンやライブラリを独立して管理し、他のプロジェクトやシステム全体に影響を与えないようにするためです。

例えば、あるプロジェクトでPython 3.10と特定のライブラリを使用し、別のプロジェクトでPython 3.9と異なるライブラリを使う場合でも、仮想環境を利用することでそれぞれの環境を分離できます。

また、仮想環境を使うことで、requirements.txtにパッケージ情報を記録し、他の開発者が同じ環境を簡単に再現できます。

これにより、チーム開発や本番環境へのデプロイ時に発生しやすいトラブルを防ぐことができます。さらに、システムのPython環境を変更せずに新しいライブラリを試せるため、Raspberry Piなどのデバイスでも安全かつ効率的に開発を進められるようになります。

仮想環境を導入した後にするべきこと

python環境の変更やコード実行前

source ~/mypy/bin/activate

都度、仮想環境を立ち上げるコマンドを実行します。

仮想環境が立ち上がっている間ならば、pythonライブラリのインストール等を行えます。

仮想環境の実行コマンドを打ちこむのが面倒な方は、~/.bashrcに以下のコマンドを追加してください。そうすれば、pyactivateとコマンドするだけで実行します。

alias pyactivate='source ~/mypy/bin/activate'

仮想環境を終了するとき

deactivate

pythonの仮想環境を立ち上げたら、使用しなくなる都度、終了してください。

最後に

pythonで仮想環境を導入する方法について紹介しました。

まさかローカルにpythonライブラリを導入できないのは、少しびっくりしました。正直、普通にinstallしてエラーになったので「バージョンが対応していないのか?」なんて首を傾げてしまうレベルでした。

とはいえ、英文をよくよく読んでみると解決方法がありました。個別に環境を操作出来るのであれば、プロジェクトごとに環境を構築していくのが望ましそうですね。

今回の記事は如何でしたか?
もし今回の記事が良かったと思った方や評価したいと思った方は、コメントを残して頂けると嬉しいです。 

また、私はパソコン以外にも記事を書いていますので、そちらも読んでいただけると幸いです。

 

0 件のコメント:

コメントを投稿

PythonのWEBフレームワーク「Fastapi」開発環境の構築して、http経由で接続する

 こんにちは、Akira(Type-EDGE)です。  あなたはPythonを使っていますか? 私はRaspberry Pi 5とPythonを組み合わせて、Google AI Studioとつないだり、音声をテキストにしたりしています。 文字通り、Pythonで遊んでいる状態で...