ubuntuにPython3.9.6をインストールしたのでやり方を書いていきます。
環境
Ubuntu 20.04.2 LTS
ツール類をダウンロード
まず以下のコマンドを実行して、必要なツールをダウンロードします。
$ sudo apt update
$ sudo apt install 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
ソースコードをダウンロード
次に、Pythonの公式サイトからソースコードをダウンロードします。
公式サイトにアクセスしたら、Downloads -> Source code -> Python Source ReleaseのLatest Python 3 Release - Python 3.9.6をクリックします。
スクロールしていくと一番下あたりに、Filesと書かれた場所があり、そこからソースコードをダウンロードできます。
Gzipped source tarballを選択します。
Python-3.9.6.tgzというファイルがダウンロードされます。
わかりやすいようにホームディレクトリにPythonというフォルダを作成してその中にダウンロードしたtgzファイルを入れました。
tgzファイルを解凍
ダウンロードしたPython-3.9.6.tgzを解凍します。
・ターミナルを起動。
・「pwd」コマンドを実行し、現在の場所を確認。
とくにいじってなければ
/home/ユーザー名と表示されるはずです。
そしたら念の為、「ls」コマンドを実行して、先ほどホームディレクトリに作成したフォルダがあるか確認します。
筆者の場合はPythonというフォルダです。
確認できたらcd フォルダ名
を実行。筆者の場合はcd Python。
左側に~/任意のフォルダ名$と表示されます。
そしたら、以下のコマンドを実行すると解凍されます。
sudo tar -xzvf Python-3.9.6.tgz
解答できたら、以下のコマンドで今解凍したフォルダへ移動します。
cd Python-3.9.6
インストール
そしたら、以下のコマンドを順番に実行して、Python-3.9.6をインストールします。
$ cd Python-3.9.6
$ ./configure
$ make
$ sudo make install
これで完了なのですが、筆者の場合、以下のような警告が表示されました。
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
訳:警告:「root」ユーザーとしてpipを実行すると、権限が破損し、システムパッケージマネージャーとの動作が競合する可能性があります。代わりに仮想環境を使用することをお勧めします:https://pip.pypa.io/warnings/venv
venvでPythonの仮想環境を作る【Ubuntu】
これには、venvでPythonの仮想環境を作ることで対処しました。
python3 -m venv yourvenv
を実行すると、ホームディレクトリにyourvenvというフォルダが新たに作られます。
これで仮想環境が作成されました。
次に仮想環境を有効化する必要があります。
以下のコマンドを実行すると有効化できます。
source yourvenv/bin/activate
成功すると左側に(yourvenv)と表示されます。
仮想環境から出るには以下のコマンドを実行します。
deactivate
※pythonを起動している場合は、いったんpythonを終了させてから実行しないとエラーが出ます。(自分はハマりました)
起動しているpythonを終了させるには以下のコマンドを実行します。
exit()
仮想環境に入っているかどうかを確認する方法
pythonを起動し、以下のコマンドを実行します。
import sys
sys.path
これでインストールされている場所のパスが表示されます。
仮想環境を有効化する前とした後で、パスが変わっていたら仮想化ができているということがわかります。
<参考>