電波ビーチ

☆(ゝω・)v

pip installしたパッケージがcommand not foundで実行できなかったのをなんとかした

メモ。

いくつかのお遊びpythonパッケージを実行する環境として、WSL2を使っています。WSL自体も適当に作って適当にいじっているしすぐ飽きて忘れるので、前回試して動いたけど久しぶりに続きをやろうとしたら動かなかった、ということだらけです。アホか

今回はとあるパッケージがターミナルから動かなくなってたやつです

python3 -V
Python 3.8.6

まずもって久しぶりにログインしたし前回どのように使っていたかわかりません。pythonだしpyenv使ってるかな?と思って見てみたけどバージョン管理はしてなくて、当然condaも使ってませんでした

次に、そもそもちゃんとあのパッケージ入れたよな?と思い調べることにしました。たぶんこういうのはpipで入れてると自分ながらにエスパーしまして

pip3 show -f xxxx
Name: xxxx
Version: 2.6.2
Summary: にゃー
Home-page: https://github.com/にゃー
Author: にゃー
Author-email: にゃー
License: UNKNOWN
Location: /home/user-name/.local/lib/python3.9/site-packages
Requires: にゃー
Required-by:
Files:
...
...
...

してみると、ちゃんとインストールはされているようです。おかしいな、数ヶ月前に動かした記録がhistoryにあるんだけど、見てもよくわからん

やったこと

いろいろやったんですが結論からいうと

  • システムのPythonのバージョンをアップグレード
  • 問題のパッケージをsudo付きでpip install

すると、使えるようになりました。

実はさっきのpip3 showでも示してありますが、/home/user-name/.local/lib/python3.9/site-packagesとあるように、Python3.9のユーザーディレクトリにパッケージがインストールされています。しかし使っているPythonのバージョンは3.8.6でした。でもpython3.9はインストールされている感じは無い....なんで?

とりあえずバージョンをアップグレードして、3.9がデフォになるようにしました。

(いちおう書いとく)Pythonインストール

www.python.org

wget https://www.python.org/ftp/python/3.9.2/Python-3.9.2.tar.xz
tar Jxf Python-3.9.2.tar.xz
cd Python-3.9.2
./configure
make
sudo make install

~/.bashrcに追記

export PATH=/usr/local/bin:$PATH

再読み込み

source ~/.source

これで書くにすると3.9が使われていました

~$ python3 -V
Python 3.9.2

sudo付きでpip install

sudoをつけないとユーザーディレクトリに入るらしい

teratail.com

ということで入れ直したらちゃんと読めるようになりました