🤦‍♂️

Ubuntu21.10でpyenvのインストール中にOpenSSLのエラーで実行できない問題

2022/02/17に公開

問題

Ubuntu21.10にpyenvを入れた時にinstallを実行すると

$ pyenv install 3.7.12
[中略]
WARNING: The Python bz2 extension was not compiled. Missing the bzip2 lib?
WARNING: The Python readline extension was not compiled. Missing the GNU readline lib?
ERROR: The Python ssl extension was not compiled. Missing the OpenSSL lib?

Please consult to the Wiki page to fix the problem.
https://github.com/yyuu/pyenv/wiki/Common-build-problems
[後略]

とかいうエラーが出てインストールに失敗したのでその解決方法を載せておきます。

解決方法

ログに出てる通り素直にwikiに飛んでみると

トラブルシューティングを行う前に https://github.com/pyenv/pyenv/wiki#suggested-build-environment に乗ってるやつがインストールされてるか確認してみてね

って一番上に書いてたので今使ってるOS(自分の場合はUbuntu)に対応した推奨されてるビルド環境を作ってみると(普通に1コマンド打つだけ)、普通にエラーも出ずに実行できました。

コマンド(Ubuntuの場合。他のOSの場合はここに乗ってます。)

$ sudo apt-get update
$ 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をインストールする時にInstallationの一番上に書いてた前提条件の項目を思いっきり見逃してました...
今回の問題は100%私が悪いです。ゴメンナサイ

GitHubで編集を提案

Discussion