免責
この記事に従って発生した如何なる損害も筆者は負うことができません。ご免なさい。
目的
私はCLIでpythonスクリプトをデバッグしたいので、PuDBというデバッグツールを使っています。
PUDB_TTYを指定してPuDBを使うときに少し苦労したので、インストール方法を残しておきたいと思います。
PUDB_TTYを指定する場合のPuDBのインストール方法
現時点で最新のpudb==2022.1.3では、PUDB_TTYを指定するとurwidでエラー(ValueError: I/O operation on closed file.)が発生するようです。
エラーを回避するためにpudb==2021.2.2をインストールします。
インストール
$ python3 -m pip install --user pudb==2021.2.2
PUDB_TTYを指定してPuDBを使う
PUDB_TTYを指定してPuDBを使うには、次のようにコマンドを実行します。
デバッガを操作するターミナル
$ tty; sleep inf
/dev/pts/4
スクリプトを動かすターミナル
$ PUDB_TTY=/dev/pts/4 TERM=vt100 python3 -m pudb ./test.py
PuDBのアンインストール
PuDBを削除するには次のようにします。
アンインストール (PuDBのみ)
$ python3 -m pip uninstall pudb -y
アンインストール (依存関係も含めた場合)
$ pip-autoremove pudb -y
アンインストール (キャッシュも依存関係も含めた場合)
$ pip-autoremove pudb -y
$ python3 -m pip cache purge
参考
Python の CUI デバッガ「PuDB」の紹介と使い方
https://documen.tician.de/pudb/starting.html#debugging-from-a-separate-terminal