#pragma section-numbers off
[[TableOfContents]]

= 概要 =

= 公式サイト =
[https://github.com/pyenv/pyenv GitHub - pyenv/pyenv: Simple Python version management]

= 関連サイト =

= インストール、設定 =
{{{
git clone https://github.com/pyenv/pyenv.git ~/.pyenv
}}}

bashrc や zshrc に以下追加
{{{
export PYENV_ROOT=${HOME}/.pyenv
export PATH=${PYENV_ROOT}/bin:${PATH}
eval "$(pyenv init -)"
}}}

= 更新 =
{{{
cd ${PYENV_ROOT}
git pull
}}}

= 利用方法 =
{{{
pyenv install --list

pyenv install -v 2.7.15
pyenv install -v 3.12.1
}}}

= Python バージョンアップ =
バージョンアップする場合は、pip でインストール済みライブラリ一覧を取得してから、新規インストールして切り替え、という手順になる

{{{
pip freeze > requirements.txt
pyenv install -v 3.11.3
# 切り替えて
pip install -r requirements.txt
}}}

= トラブルシューティング =

== SSL関連 ==
環境によっては SSL のバージョンが古いようだ。古いSSLだとセキュリティ的に問題があったるため、一部サービスが正常利用できない

以下で Python にリンクされている SSL のバージョンを確認しておく事

{{{
import ssl
ssl.OPENSSL_VERSION
}}}

brew の OpneSSL を利用したい場合は以下のような指定をした方が確実

{{{
CONFIGURE_OPTS="--with-openssl=$(brew --prefix openssl)" pyenv install 3.6.4
}}}


##CFLAGS="-I$(brew --prefix openssl)/include" LDFLAGS="-L$(brew --prefix openssl)/lib" pyenv install 3.6.4

== Ubuntuでのインストール ==
{{{
sudo apt build-dep python
sudo apt install -y zlib1g-dev libreadline-dev libsqlite3-dev  libncurses5-dev libssl-dev libbz2-dev 
}}}

= 参考サイト =
----
CategoryPython