実現したいこと
Raspberry Pi Zero に、なんとかfirebase_admin をインポートしたいです。
前提
デバイス:Raspberry Pi Zero WH
CPU:Linux 6.1.13+ #1632 Thu Feb 23 12:15:54 GMT 2023 armv6l GNU/Linux
OS詳細:
PRETTY_NAME="Raspbian GNU/Linux 11 (bullseye)"
NAME="Raspbian GNU/Linux"
VERSION_ID="11"
VERSION="11 (bullseye)"
VERSION_CODENAME=bullseye
ID=raspbian
ID_LIKE=debian
HOME_URL="http://www.raspbian.org/"
SUPPORT_URL="http://www.raspbian.org/RaspbianForums"
BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs"
最終的に実現させたい事
Flutterアプリから、firestore database を経由して、コレクションの更新状況を利用して、Raspberry Pi Zero で、Lチカをしたいです。
( Flutter アプリのスイッチを押す → firestore database のコレクション → ドキュメント → フィールドが更新するので、その更新情報を、Raspberry Pi Zero で受けて、Pythonプログラムで、Lチカを実現させたいです )
現状
① Flutterと、firestore database 間は、構築済み。
Flutter アプリのスイッチを押すと、firestore database のフィールドが、リアルタイムで更新するのが確認できます。
( chromeブラウザで、Firebase サイトで、更新を視覚にて確認できてます )
② Raspberry Pi Zero に、firebase_admin は、インストール済みです。
( バージョン確認もできますので、正常にインストールされていると思います。6.1.10 で最新です。pipでインストールしました )
③ ググって見ると、私がしたい様な事を、実現している方がいらっしゃいました。
そのサイトは、firestore database の更新を、リアルタイムで受けて、Pythonプログラムで、更新を表示させると言ったものでした。
私は、それを参考に、Pythonファイルを作成しました。
しかし、実行するも、いきなり、
" Illegal Instruction "
と、表示され、インタプリタが解除されて、ラズパイの入力待ちまで、戻ってしまいました。
④ なぜ、この様になるのか、分からないので、原因特定の為に、インタプリタ、対話方式で、コードを、一つずつ入力して、特定に努めました。
すると、最初のインポートで、いきなりエラーになりました。
発生している問題・エラーメッセージ
pi@username:~ $ python3 Python 3.9.2 (default, Mar 12 2021, 04:06:34) [GCC 10.2.1 20210110] on linux Type "help", "copyright", "credits" or "license" for more information. >>>import firebase_admin Illegal Instruction pi@username:~ $
⑤ 上記の様に、firebase_admin をインポートすると、いきなり、Illegal Instruction と、表示され、待ち受けまで、戻ってしまいます。
⑥ 参考サイトでは、しっかりと、ラズパイに、firebase_admin が、インポートできているのに、私の、Raspberry Pi Zero WHでは、インポートすると、上記の様に、何度やってもエラーになります。
再起動や、それから、firebase_admin のバージョンを、下げたもので、インストールし直しても、やはり、インポートエラーになりました。
⑦ いろいろと、ググって見ると、有るサイトで、Raspberry Pi Zero WH は、CPUが、ARMV6と言う事が分かりました。
それに対して、ググって見つけたサイトには、ARMV7のラズパイでないと、firebase_admin は、インポート出来ない様な事が、書いてありました。
試したこと
Raspberry Pi Zero WH でも、OSを変更すれば、ARMV7になるのかな?と思い ( 全くの素人考えです ) 、デスクトップ用の、OSを、SDにインストールし直して、確認してみたりしましたが、やはり、armv6 でした。
( やっぱり、インポートすると、Illegal Instruction と言う結果になります )
⑧ 現在、この様な状況ですが、私の、Raspberry Pi Zero WH で、firebase_admin を、インポートするのは、CPUが違うので、物理的に無理なのでしょうか?それとも、どこかの設定ファイルを、変更するなどすれば、インポートが出来る様なやり方などが、有ったりするのでしょうか?
そこが知りたいです。
ほぼ、私は素人なので、詳しい方、なるべく、詳しく、教えて頂けると、嬉しいです。
解決の為の、ヒントでも嬉しいです。
どうぞ、よろしく、お願い致します。
補足情報(FW/ツールのバージョンなど)
Pythonは、3.9.2です。
あなたの回答
tips
プレビュー