【初心者向け】Pythonのインストール手順(Ubuntu)

Python

こんにちは。パパスです。
今回はUbuntuでPythonをインストールする手順をご紹介します。

Macの方は下記記事をご覧ください。

環境

Ubuntu 20.04.4 LTS

Gitのインストール

インストール状況確認

下記コマンドを実行し、Gitがインストールされているか確認します。

$ git --version

実行すると下記いずれかのように表示されます。

# インストールされている場合
$ git --version
git version 2.25.1

# インストールされていない場合
$ git --version

コマンド 'git' が見つかりません。次の方法でインストールできます:

sudo apt install git

インストール

下記を実行し、Gitをインストールします。

$ sudo apt install git

インストールを完了したら、最低限の初期設定を行います。

$ git config --global user.name [your_name]
$ git config --global user.email [your@email]

[your_name], [your@email]の箇所はご自身のユーザー名とメールアドレスになります。
※いつでも変更できるので、適当で大丈夫です

pyenvのインストール

インストール状況確認

下記コマンドでpyenvがインストールされているか確認します。

$ pyenv -v

実行すると下記いずれかのように表示されます。

# インストールされている場合
$  pyenv -v
pyenv 2.2.5-1-ga157725d

# インストールされていない場合
$ pyenv -v

コマンド 'pyenv' が見つかりません。もしかして:

  command 'pyvenv' from deb python3-venv (3.8.2-0ubuntu2)
  command 'p7env' from deb libnss3-tools (2:3.49.1-1ubuntu1.6)

次を試してみてください: sudo apt install <deb name>

インストール済みの方はPythonのインストールまでお進みください。

インストール

下記を実行し、pyenvをインストールします。

$ git clone https://github.com/pyenv/pyenv.git ~/.pyenv

pyenvを使えるようにするために初期設定をします。

$ sed -Ei -e '/^([^#]|$)/ {a \
export PYENV_ROOT="$HOME/.pyenv"
a \
export PATH="$PYENV_ROOT/bin:$PATH"
a \
' -e ':a' -e '$!{n;ba};}' ~/.profile

$ echo 'eval "$(pyenv init --path)"' >>~/.profile
$ echo 'eval "$(pyenv init -)"' >> ~/.bashrc
$ source ~/.profile
$ source ~/.bashrc

インストールが終わったら下記コマンドで確認します。

$ pyenv -v

インストールしたバージョンが表示されればOKです。

Pythonのインストール

ビルド環境構築

Pythonをインストールする際、ビルドが行われます。
ビルドに必要なライブラリがいくつかあるので、まずはそちらを導入しましょう。
Ubuntu以外のLinuxをお使いの方は下記URLよりご確認ください。
https://github.com/pyenv/pyenv/wiki

$ sudo apt-get install make build-essential libssl-dev zlib1g-dev \
libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm \
libncursesw5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev

上記の導入を終えたら、早速Pythonをインストールしていきます。

インストールできるバージョンを確認

まずはインストールできるバージョンを確認します。

$ pyenv install --list

以下のように沢山表示されます。

$ pyenv install --list
Available versions:
  2.1.3
  2.2.3
 --- 省略 ---
  3.9.10
  3.9.11
  3.10.0
  3.10-dev
  3.10.1
  3.10.2
  3.10.3
 --- 省略 ---

インストール

上記結果からインストールするバージョンを選択します。
今回は3.10.3をインストールしてみたいと思います。

$ pyenv install 3.10.3

インストールが終わったら下記コマンドで確認します。

$ pyenv versions

3.10.3が追加されていますね。

$ pyenv versions
* system (set by /Users/papas/.pyenv/version)
  3.10.3

インストールに失敗した場合

以下のようにインストールに失敗した場合、前項のビルド環境構築を実施した上で再度インストールしてみてください。
(僕はこれに悩まされました…)

$ pyenv install 3.10.3
Downloading Python-3.10.3.tar.xz...
-> https://www.python.org/ftp/python/3.10.3/Python-3.10.3.tar.xz
Installing Python-3.10.3...

BUILD FAILED (Ubuntu 20.04 using python-build 2.2.5-1-ga157725d)

Inspect or clean up the working tree at /tmp/python-build.20220317181418.13977
Results logged to /tmp/python-build.20220317181418.13977.log

Last 10 log lines:
  File "/tmp/python-build.20220317181418.13977/Python-3.10.3/Lib/ensurepip/__init__.py", line 277, in _main
    return _bootstrap(
  File "/tmp/python-build.20220317181418.13977/Python-3.10.3/Lib/ensurepip/__init__.py", line 193, in _bootstrap
    return _run_pip([*args, *_PACKAGE_NAMES], additional_paths)
  File "/tmp/python-build.20220317181418.13977/Python-3.10.3/Lib/ensurepip/__init__.py", line 93, in _run_pip
    return subprocess.run([sys.executable, '-W', 'ignore::DeprecationWarning',
  File "/tmp/python-build.20220317181418.13977/Python-3.10.3/Lib/subprocess.py", line 524, in run
    raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['/tmp/python-build.20220317181418.13977/Python-3.10.3/python', '-W', 'ignore::DeprecationWarning', '-c', '\nimport runpy\nimport sys\nsys.path = [\'/tmp/tmpbe5ietop/setuptools-58.1.0-py3-none-any.whl\', \'/tmp/tmpbe5ietop/pip-22.0.4-py3-none-any.whl\'] + sys.path\nsys.argv[1:] = [\'install\', \'--no-cache-dir\', \'--no-index\', \'--find-links\', \'/tmp/tmpbe5ietop\', \'--root\', \'/\', \'--upgrade\', \'setuptools\', \'pip\']\nrunpy.run_module("pip", run_name="__main__", alter_sys=True)\n']' returned non-zero exit status 1.
make: *** [Makefile:1280: install] エラー 1

使用するPythonのバージョンを設定する

先程インストールしたバージョン3.10.3を使うように設定します。

$ pyenv global 3.10.3

もう一度バージョンを確認すると、*が3.10.3の方に移動して切り替わりました。

$ pyenv versions
  system
* 3.10.3 (set by /Users/papas/.pyenv/version)

おわりに

慣れないUbuntuでの環境構築でしたが、何とか無事にできました。
僕と同じように環境構築に躓いている方の参考になれば幸いです。

タイトルとURLをコピーしました