WSL 上で pyenv を使う方法

前提

  • WSL がインストールされている。
  • WSL 上に Homebrew がインストールされている。
  • Windows の PATH を使用しない設定がなされている。(appendWindowsPath=false)
  • zlib-devel がインストールされている。(apt-get install zlib1g-dev もしくは yum install zlib-devel を実行する。)

手順

pyenv をインストールする。

$ brew install pyenv

~/.bash_profile に環境変数の設定を追加する。

$ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile
$ echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile

~/.bash_profile に pyenv の初期化処理を追加する。

$ echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n eval "$(pyenv init -)"\nfi' >> ~/.bash_profile

シェルを再起動する。

$ exec $SHELL -l

インストール可能な Python のリストを表示する。

$ pyenv install --list

指定したバージョンの Python  をインストールする。

$ python install 3.8.5

グローバルで使用する Python を指定する。

$ pyenv global 3.8.5

使用する Python を確認する。

$ pyenv version

参考:

Homebrew + Windows 10 + WSL で pyenv、python のインストール – Qiita

Homebrew のインストールから pyenv で Python の Anaconda 環境構築までメモ – Qiita

WSL で Windows の PATH を引き継がないようにする方法 – Qiita

Linuxbrew のススメ – Qiita

no module named zlib – Stack Overflow

brew install zlib-devel on Mac OS X Mavericks – Stack Overflow

_ctypes のインポートに失敗する

現象

_ctypes が見つからない旨のエラーが発生する。

ModuleNotFoundError: No module named '_ctypes'

対処法

libffi-devel をインストールする。

$ yum install libffi-devel

Python をインストールし直す。

$ pyenv install -f 3.8.5

参考:

pyenv で3.7系のインストールに失敗したときのメモ – Qiita

pipenv の install 時に、No module named ‘_ctypes’ が発生する – Qiita

ImportError: No module named ‘_ctypes’ when using Value from module multiprocessing – Stack Overflow

タグ:

コメントを残す

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