ubuntu環境でpython3のバージョンを3.6-->3.9に更新する際のメモ
以下の通り3.6.x
を使用している状態
$ python3 --version
Python 3.6.9
こちらを参考に以下の通り更新する
sudo apt update -y
sudo apt install software-properties-common
sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt install python3.9 -y
上記で解決、、と思いきやまだ更新できていなかった。
$ python3 --version
Python 3.6.9
代わりに以下を実施
sudo apt update -y
sudo apt install -y build-essential libbz2-dev libdb-dev libreadline-dev libffi-dev libgdbm-dev liblzma-dev libncursesw5-dev libsqlite3-dev libssl-dev zlib1g-dev uuid-dev tk-dev
wget https://www.python.org/ftp/python/3.9.9/Python-3.9.9.tar.xz
tar xJf Python-3.9.9.tar.xz
cd Python-3.9.9
./configure
make
sudo make install
上記で解決、、と思いきやまだ更新できていなかった。
$ python3 --version
Python 3.6.9
ログアウト、ログインすると解決した。
が、(なぜか)ライブラリが追従できなかったので、pip3 upgradeした。
/usr/bin/python3 -m pip install --upgrade pip
このあとpip3でエラーが出る場合は以下を参照して解決するとOK
pip3をupgradeしたあと、pip3を使用時にModuleNotFoundError: No module named 'pip._internal'となる際の解決策
以下は失敗
実体を検索すると、python3.6
のシンボリックリンクとなっていたので、
$ which python3
/usr/bin/python3
$ ls -l /usr/bin/python3
/usr/bin/python3 -> python3.6
シンボリックリンクを張り替える
/usr/bin/
sudo ln -nfs python3.9 python3
これでpython3
を使う際はpython3.9
が使えるようになった
$ python3 --version
Python 3.9.9
と、思いきや他のライブラリが使えなくなったのでもとに戻した(シンボリックリンク張り替え前に戻した)
参考
Ubuntu - Python 3.9のインストール方法
Python 3.9、このバージョンをUbuntu20.04にインストールする方法