IT技術で仕事を減らしたい!

ITエンジニアのメモ+α

Windowsでのpyenvのトラブル解決法

どうも、nippa です。

Windows の WSL2 上で python の仮想環境を構築したく、pyenv をインストールして python の仮想環境を管理しようとしたころ、python の build がすんなりできなかった ので備忘録代わりに記事にしておきます。

環境

Pyenv のインストール

  1. git でソースコードを clone する
   git clone https://github.com/pyenv/pyenv.git ~/.pyenv
  1. pyenv の初期化
   pyenv init
  1. ログインシェルの再起動
   exec -l $SHELL
  1. pyenv の拡張機能(update 機能)のインストール

    pyenv 自体のアップデートを簡単にするため拡張機能の update のサブコマンドをイ ンストールします。

   git clone https://github.com/pyenv/pyenv-update.git $(pyenv root)/plugins/pyenv-update

Pyenv で python 仮想環境の構築

インストール可能な Python バージョンを確認します。

pyenv install --list

素の python の場合、バージョン番号になります。anaconda、miniconda もインストール できるので、環境の後始末にも便利なので、素でインストールするより後始末が簡単です 。

pyenv install 3.11.2

インストールした python バージョンを global にセットします。ユーザーログイン後、 デフォルトで使われる python になります。

# global環境のpythonを指定します。
python global 3.11.2

# 指定されているかの確認をします。
pyenv versions

Python のビルドで遭遇したエラー

  1. C 言語のコンパイルラーが見つからない

    以下のコマンドで、C コンパイラをインストールします。

   sudo apt update
   sudo apt upgrade
   sudo apt install gcc
  1. make コマンドが見つからない

    以下のコマンドで、make コマンドをインストールします。

   sudo apt install make
  1. 複数の開発用のライブラリが不足している

    python の標準ライブラリで必要な開発用をインストールします。

   sudo apt update
   sudo apt upgrade
   sudo apt install build-essential libbz2-dev libdb-dev libffi-dev libgdbm-dev liblzma-dev libncursesw5-dev libreadline-dev libsqlite3-dev libssl-dev tk-dev uuid-dev zlib1g-dev

上記の対応で、python の build に必要なコマンド・ライブラリはインストールできます 。

感想

今回、Windows の WSL で python の仮想環境を作る必要があり、生じたトラブルをまと めておきました。

知っていればどうってことはありませんが、知らないと苦労します。

あとから、python が動かないとかもありますので、環境は正しく構築しておきましょう 。

ではでは、また次回。