0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

(root 無し, 現環境を汚さず) 取り急ぎで Python の任意バージョン環境を pip 付きで用意したい

Last updated at Posted at 2023-04-07

注意

※ 多分、もうちょっと効率的な方法があると思う (よってタイトルに "取り急ぎ")
※ Linux Mint (21.1 Vera 64bit) 上で動作確認、他環境では動作未検証

手順

Python を自力でビルドし、仮想環境を構築し、そこを環境とします。仮想環境を作ることで、環境を汚さない上に、無理やり pip が使える環境を用意する、という算段です。

1.必要なバージョンの Python をビルド

とりあえず、手元で動いたコマンドを載せておきます。詳しいビルド手順は、公式リファレンスを参照してください。

# 先にソースをダウンロード・展開し、カレントを移しておく
mkdir build
cd build
../configure --enable-optimization
make -j5

※ ここで、sudo make install は不要です。

make のオプション -j5 は、並列タスクの最大数指定です。フルパワーで動かすには、CPU スレッド数+1を指定すると良いとされています。

2. 得られた実行ファイルから仮想環境作成

# ホームに pytest ディレクトリを作り、そこに環境を作るとする
mkdir ~/pytest
./python -m venv ~/pytest/.venv
cd ~/pytest

3. 必要なパッケージなどをインストール

./.venv/bin/pip install <required-packages>

4. あとは任意のコードを実行

./.venv/bin/python </path/to/any_code.py>

余談

Python 3.9 以降について・・・

  • list の要素の型アノテーション list[int] がビルトインサポート
  • それ以前 (3.8.X) は typing.List でサポート
  • typing.List は 3.9 リリースの 5年後に廃止予定

というような理由があって、3.8 以前と 3.9 以降それぞれの環境で検証したいことがあり、今回の記事作成に至りました。

当初、apt をなんやかんややってと考えていたのですが、頓挫してこの方法に至りました。自力ビルドなのでちょっと手間・・・ではありますが、環境を汚す心配が全くないのが長所です。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?