0.方針、条件
- ソースをダウンロードしインストール
- OS:Debian10.10
1.ビルドに必要なパッケージをインストール
apt update
apt install -y build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libsqlite3-dev libreadline-dev libffi-dev libssl-dev ssl-cert openssl
2. Python3.9のソースをダウンロード、ビルド
- 既存のpython、python3のコマンドを上書きしないように、「make altinstall」を実行する。
# ソースのダウンロード先に移動
cd /usr/local/src/python
# ソースをダウンロード・展開
curl -O https://www.python.org/ftp/python/3.9.6/Python-3.9.6.tar.xz
tar -xf Python-3.9.6.tar.xz
# 展開されたフォルダに移動
cd Python-3.9.6
# prefixでインストール先を指定
./configure --enable-optimizations --prefix=/usr/local/python3.9.6
sudo make altinstall
3. 「python3」コマンドをインストールしたバージョンと対応づける
- 「update-alternatives」コマンドを利用して設定する。
# インストールしたpythonをupadte-alternativesに登録
sudo update-alternatives --install /usr/local/bin/python3 python3 /usr/local/python3.9.6/bin/python3.9 10
# 設定を確認
python3 --version
Python 3.9.6
4. pip3.9をインストール
- aptでpip3をインストールすると「/usr/lib/python3」にインストールされるので、「get-pip.py」を利用してインストール。
- インストールしたバージョンから参照できる場所にpipのパッケージをインストールするのが目的。
- ソースの取得先は、「Python Package Authority (pypa) 」とする。
# pipのソースを取得
sudo curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
# インストール
python3 get-pip.py
# pip3コマンドをインストール先と対応づける
sudo update-alternatives --install /usr/local/bin/pip3 pip3 /usr/local/python3.9.6/bin/pip3.9 10
# 設定を確認
pip3 --version
pip 21.2.1 from /usr/local/python3.9.6/lib/python3.9/site-packages/pip (python 3.9)
インストールしたディレクトリにパスを通す
# PATHにインストールディレクトリを追加
export PATH="$PATH:/usr/local/python3.9.6/bin"
# 設定読み込み
. ~/.bashrc