ウェブサイト検索

UbuntuでPython 3.11/3.10をソースからコンパイルしてインストールする方法


この簡単なチュートリアルでは、UbuntuにPython 3.11、Python 3.10、または他の特定のPythonバージョンをコンパイルしてインストールする方法を示します。

Ubuntu 18.04、Ubuntu 20.04、そしてUbuntu 22.04 LTS用には、すべてのPythonパッケージを維持している信頼できる「deadsnakes」チームのPPAがあります。非LTSリリースの場合は、ソースのタールボールからプログラミング言語パッケージを手動でビルドすることができます。

注意: このチュートリアルは、私の環境ではUbuntu 20.04、Ubuntu 22.04、およびUbuntu 23.04でテストされており、動作します。

1. 準備:

始める前に、コンピュータ言語パッケージを構築するために、いくつかの必須パッケージをインストールする必要があります。

キーボードのCtrl+Alt+Tを押すか、スタートメニューから検索してターミナルを開きます。開いたら、下記のコマンドを実行して依存関係をインストールします:

sudo apt install wget build-essential libreadline-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev libffi-dev zlib1g-dev

2. Python タールボールをダウンロード:

以下のリンクからPythonのウェブサイトから最新のtarballを簡単にダウンロードできます:

Pythonをダウンロード: https://www.python.org/downloads/

デスクトップ環境なしでUbuntuを実行している場合は、ターミナルでwgetコマンドを実行してソースパッケージをダウンロードしてください:

wget -c https://www.python.org/ftp/python/3.11.0/Python-3.11.0.tar.xz

他のPythonバージョンについては、このページでウェブブラウザを介してダウンロードしてください。そして、コマンドのバージョン番号をそれに応じて変更してください。

そして、ファイルマネージャーで右クリックして「ここに展開」を選択するか、ターミナルでコマンドを実行してtarballを解凍します:

tar -Jxf Python-3.11.0.tar.xz

3. ソースを設定する:

ソースターボールをどのように取得するかによります。ファイルマネージャで右クリックして抽出し、コンテキストメニューオプションを使ってターミナルでソースフォルダを開きます。

ターミナルでPython 3.11のソースフォルダーを開く

上記のtarコマンドを実行した場合は、次のようにソースフォルダーに移動できます:

cd Python-3.11.0/

コマンドは、ダウンロードしたPythonのバージョンによって異なります。

ソースディレクトリにいるときは、コストのかかる安定した最適化(PGOなど)でソースを構成するためのコマンドを実行します:

./configure --enable-optimizations

4. Pythonをビルドしてインストールする:

最終的に、コマンドを実行してそれを「/usr/local/bin」にコンパイルしてインストールします:

sudo make -j4 && sudo make altinstall

ここで -j4 は作業を速めるために4つのスレッドを開始します。あなたのCPUによって、数を増やすか、単にスキップすることができます。そして、make コマンドが完了すると、make installをsudo権限で実行するためにパスワードを入力するよう求められます。

5. 確認する

すべてが問題なく成功裏に完了した場合は、次のコマンドを実行して確認できます:

python3.11 --version
python3.11 -m pip --version

それはあなたのために言語バージョンとpipパッケージマネージャーバージョンの両方を出力するべきです

5. Python 3.11をデフォルトにする

重要: UbuntuでデフォルトのPython3を変更すると問題が発生する可能性があります!!! 自己責任で実行してください。

インストール後、/usr/bin/python3へのシンボリックリンクを作成することで、それをデフォルトとして設定できます:

sudo update-alternatives --install /usr/bin/python3 python3 /usr/local/bin/python3.10 110
sudo update-alternatives --install /usr/bin/python3 python3 /usr/local/bin/python3.11 100

最初のコマンドで、Ubuntu 20.04を使用している場合はシステムのデフォルトpython3.10をpython3.8に変更します。最後に、いつでも以下のコマンドを実行してデフォルトとして使用するPythonを選択します:

sudo update-alternatives --config python3

Python 3.11をアンインストールする:

ソースディレクトリを削除するまでに、まずターミナルでそのフォルダに移動するか、右クリックして「ターミナルでフォルダを開く」を選択し、最後に make uninstall コマンドを実行してPython 3.11を削除します。

sudo make uninstall

既にソースを削除した場合、または前のコマンドが機能しない場合は、次の方法でインストールされているすべてのライブラリを手動で削除してみてください:

cd /usr/local/bin && rm -f sudo rm -f 2to3 2to3-3.11 idle3 idle3.11 pip pip3 pip3.10 pip3.11 pydoc3 pydoc3.11 python3 python3.11 python3.11-config python3-config

関連記事: