2021年8月4日(水) 23:24

pip を最新に更新すると、 pip install opencv-python は通るようになった。
しかし相変わらず、No module named 'cv2' は解消しない。
インストールで警告が発生していて、どうも python3.9 の代わりに python 3.6 を見に行ってる感じ。そこで、python だけでなく python3 のデフォルトも python3.9 に変えてやる。
update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.6 1
update-alternatives --install /usr/bin/python3 python3 /usr/local/bin/python3.9 2
update-alternatives --config python3
これで2を選択する。
だが、これも無関係だったようだ。
/usr/local/lib/python3.9/site-packages/ を確認すると・・・cv2 というディレクトリがない。
/usr/local/lib/python3.6/site-packages/ には、ちゃんと cv2 がある。そういうことか!
python と python3 で python3.9 が選択されるようになったところで、cv2 も pip も「見つかりません」状態に。ならばこの状態でインストールだ。それで話が済めば良いのだが、これまたエラーが出てインストール失敗。どうやっても pip が入らず一歩も先に進めない。
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
apt update
apt upgrade
などを実行するも、apt install python3-pip が成功しそうに見えて最後で Sub-process /usr/bin/dpkg returned an error code (1) とエラーが出てインストールされていない。このエラーを調べると、どこかでパッケージが壊れている可能性あり。再インストールすべきなようだ。
何よりも最初に、python3.9 を再インストールする。入れるのは、現時点の最新 python3.9.6 である。
make install まで行うと、最後に幾つかエラーが出た。いちおう python3 -V では 3.9.6 と表示される。果たして?
pip のインストールに失敗しているようだ。get-pip.py はじめどんな方法を使っても、pip のインストールはエラーになって入ってくれない。
その後も悪戦苦闘したが、何やっても駄目。遂に断念し、完全に心が折れて python3.6 を使うことにした。
だが、デフォルトを python3.6 に戻しても、ちゃんと戻ってくれない。pip は実行できるようになったが、カメラテストのプログラムを走らせると「cv2 が無い」と言われる。
こうなったら、マイクロSDカードを初期化して一からやり直すべきだろう。ことここに至っては正に「急がば回れ」だ。手に負えない。
ジェットパックを入れるところからスタートし SSH 接続で操作できる環境まで作ったら、真っ先に python3.9 のインストールからだ。
written by higashino [Sタンク 1/16] [この記事のURL] [コメントを書く] [コメント(0)] [TB(0)]
Generated by MySketch GE 1.4.1
Remodelling origin is MySketch 2.7.4