LoginSignup
10
10

Ubuntuにpyenvをインストールする

Last updated at Posted at 2022-06-05

更新日:2022/10/16 (Ubuntu22.04追加)
記載日:2022/6/5
Ubuntuにpyenvをインストールする方法を記載します。

目標

ubuntuにpyenvをインストールし、希望するバージョンのpythonコマンドを実行できるようにする。

環境

OS : Ubuntu20.04、 Ubuntu22.04
gitインストール済

作業

0.pyenvライブラリのダウンロード

Terminalを開き、以下コマンドを実行。
(コマンド実行後、ホームディレクトリで”ll -a”コマンドを実行すると.pyenvが追加されていて、ダウンロードできていることが確認できる。)

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

pyenvコマンドを実行できるようにするためにパスの設定を行う。.bashrcファイルに記述追加するために、以下コマンドを実行する。
.bashrc以外に、.profileなどにもパス設定を追加したい方は追加する。

echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
echo 'command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(pyenv init -)"' >> ~/.bashrc

変更内容を読み込ませる。

source .bashrc

ターミナルで、以下コマンドを実行するとpyenvのバージョンが表示され、インストールできたのが確認できる

pyenv --version

1.pyenvでpythonをインストール

以下コマンドを実行し、インストールできるPythonバージョンを確認する。

pyenv install -list

希望のバージョンをインストールする。
(私の場合はここでエラーが出た。下記”#2-エラー対応”を参照。)

pyenv install 3.9.13

対象バージョンがインストールできたことを以下コマンドで確認。

pyenv versions

グローバルでpythonコマンドを使えるようにする。

pyenv global 3.9.13

最後にpythonコマンドが使えることを確認。

python --version

2.エラー対応

pyenv installコマンドを実行したときに3回エラーになった。

・ターミナルに”no acceptable C compiler found in $PATH”というエラー。
 gccをインストールすることで解決できるらしい。

sudo apt-get install build-essential

・またエラー。ターミナルに記載されたLogファイルを確認すると、最後の方に”ZipImportError:zlib not available”というエラー。
 Zlibをインストール。

sudo apt-get install zlib1g-dev

・またエラー。ターミナルに記載されたLogファイルを確認すると、最後の方に”The Python ssl extension was not compiled. Missing the OpenSSL lib?”というエラー。
 https://github.com/pyenv/pyenv/wiki/Common-build-problems に記載の対応をする。

①20.04、22.04の場合

sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev \
libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev \
xz-utils tk-dev libffi-dev liblzma-dev python-openssl git

②22.04で"python-openssl が見つかりません"と出る時があった。その時は以下で対応できた。

sudo apt-get install make build-essential libssl-dev zlib1g-dev \
libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm \
libncursesw5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev

以上で無事にインストールできるようになった。

参考にさせて頂いたサイト

・pyenvについて
https://github.com/pyenv/pyenv#installation
・エラー対応について
https://qiita.com/kenta_ojapi/items/6b19e0c05b268f3e74da
https://zenn.dev/moru3_48/articles/94d01b0ed2a91e

10
10
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
10