はじめに
Ubuntu18.04に環境構築したので、作業メモとして残します。
Python3.8のインストールにはpyenvを使用します。
環境
Ubuntu 18.04.3 LTS
手順
1.Git インストール
$ sudo apt install git
2.pyenv インストール
githubからpyenvをクローンする。
$ git clone https://github.com/pyenv/pyenv.git ~/.pyenv
パスを環境変数に設定。
Ubuntuだと.bash_profileでなく.bashrcに記載する。
[参考]
https://github.com/pyenv/pyenv#basic-github-checkout
$ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
$ echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
シェル起動時にpyenvが起動されるように設定。
$ echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n eval "$(pyenv init -)"\nfi' >> ~/.bashrc
シェル再読込 & インストール確認。
$ exec "$SHELL"
$ pyenv --version
pyenv 1.2.15-2-g22c02022
3.Python3.8 インストール
Pythonのビルドに必要なパッケージをインストールする。
[参考]
https://github.com/pyenv/pyenv/wiki#suggested-build-environment
$ sudo apt-get update; sudo apt-get install --no-install-recommends make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev
Python 3.8.0 をインストール(時間がかかるので気長に待ちます)
$ pyenv install 3.8.0
インストール確認
$ pyenv versions
* system
3.8.0
4.ローカルで使用するPythonを指定する
pyenvでインストールしただけではPython3.8は有効にならないので、明示的にバージョンを指定する。
$ mkdir -p ~/sample/py38
$ cd ~/sample/py38
$ pyenv local 3.8.0
ローカル以下(上の例だとpy38ディレクトリ以下)でpython3.8が有効になる。(pipコマンドも同様)
$ python --version
Python 3.8.0
$ pip --version
pip 19.2.3
5.Pipenv インストール
$ pip install pipenv
$ pipenv --version
pipenv, version 2018.11.26
6.Pipenv プロジェクト作成
環境変数にPIPENV_VENV_IN_PROJECT=true
を指定すると、プロジェクト直下にvenvディレクトリが作成される。vscodeとの連携がしやすいため、ここではtrueに設定する。
$ mkdir pipenvdemo
$ cd pipenvdemo
$ export PIPENV_VENV_IN_PROJECT=true
$ pipenv --python 3