出張先でのPythonの環境整備。pipが通らない。^^;
RaspberryPiを積んで出張に来たのはいいけれど。
そうなんですよ。しっかりセットアップしてからもってくりゃいいものを、
まぁこんなのなんとかなるだろ^^V
なんて、タカをくくってたわけで。
そしたらネットワークでLANを構築できないわ、、
なんとかごまかしたと思ったら、
今度はPIPが通らない。
うぅーーん。
いわゆるオフラインインストールっぽいことできないの?
と調べたら、、まぁできるっちゃできるようなのでやってみました。
しかし、OSの問題が。
実際にどうやるかというと、
pip download
とかやって、download。
そして今度はこれをinstallするマシンにCOPYしてから、それを指定してpip
という流れなわけです。
しかし、、、
Windowsでpip downloadして、RaspberryPiでpipしたところ、
大丈夫なものとアカンものがある
というのに遭遇してしまって。
うぅーーん。しかたないな。
でも、Linuxならいけるんちゃう?
ということで、VPSで借りてるサーバに入ってpip download、
そのフォルダごとRaspberryPiにCOPYして、pip。
これでなんとかうまくいきました。
でも、これはLinuxのVPSがあったからできたわけで、、
ここで微妙なversionとか、debian系とCentOS系の違いとかが出ちゃったらアウトでしたが。。
今回使ったものを、とりあえず大丈夫っぽいです。
実際にやったこと
実際にやったことを書いてみますね。
Version確認とか。
まずCentOS側で。
[xxxxxxx]# cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)
[xxxxxxxx]# python3 --version
Python 3.6.8
[xxxxxxxx]# pip3 --version
pip 9.0.3 from /usr/lib/python3.6/site-packages (python 3.6)
RaspberryPi側で。
root@raspberrypi:/# cat /etc/debian_version
10.3
root@raspberrypi:/# python3 --version
Python 3.7.3
root@raspberrypi:/# pip3 --version
pip 18.1 from /usr/lib/python3/dist-packages/pip (python 3.7)
大丈夫か!?こんなに違う環境で!っておもったけど、とりあえず、、
CentOS側で。
pip3 download -d /etc/tmpQ websocket-server
pip3 download -d /etc/tmpQ websocket-client
pip3 download -d /etc/tmpQ pyserial
pip3 download -d /etc/tmpQ pyyaml
pip3 download -d /etc/tmpQ esptool
そしたらこんだけファイルが。
そう、これをWindowsでやったら、
【PyYAML-5.3-cp37-cp37m-win_amd64.whl】
ていう、見るからに妖しいファイル名がdownloadされちゃったわけです。
こんどはこれをRaspberryPiの方に移して、、
pip3 install --no-index --find-links=/etc/tmpQ pyyaml
pip3 install --no-index --find-links=/etc/tmpQ pyserial
pip3 install --no-index --find-links=/etc/tmpQ esptool
pip3 install --no-index --find-links=/etc/tmpQ websocket-server
pip3 install --no-index --find-links=/etc/tmpQ websocket-client
っとまぁ、こういう感じでした。
ちなみに、M5StackにSerialで表示させるやつやってみたら、
あ、、そうだった。
socket.gethostbyname(socket.gethostname())
やっても、【127.0.1.1】しか返してくれへんやぁーーん!!
気分は、、こんな感じで。
仕方ない。この場合はいかがわしい方法でやるいしかないか。。。^^;