Python Pip Install funktioniert nicht, danach RasPi tot

Registriere dich jetzt, um exklusive Vorteile zu genießen! Als registriertes Mitglied kannst du Inhalte herunterladen und profitierst von einem werbefreien Forum.
Mach mit und werde Teil unserer Community!
  • Hallo zusammen,


    ich habe ein großes Problem mit meinem Raspberry Pi 4 mit Bullseye, 64-bit. Immer wenn ich versuche etwas mit Python PIP zu installieren, kommt es zu einem Fehler (dabei hat das vor ca. 3 Monaten noch gut funktioniert).


    Wenn ich dann, wie man es im Internet liest, alle Pythin Pakete mit sudo apt remove xxx deinstalliere, ist mein RasPi-User nicht mehr nutzbar. Deshalb richte ich den RasPi nun diese Woche schon das zweite Mal komplett neu ein.

    Könnt ihr mir Tipps geben, woran das liegt? Im Internet habe ich einiges gelesen aber keine Lösung gefunden.


    Danke und Grüße,

    Mic.

  • Python zu deinstallieren ist keine gute Idee, weil es vom OS gebraucht wird.


    Welches Packet versuchst du mit pip zu installieren? Passiert das bei allen oder nur bei bestimmten? Und was ist die Fehlermeldung? (Diese bitte in einem Codeblock posten)

  • Mic2022 Hör auf im Internet zu lesen. Alle von der Linux-Distribution installierten Python-Pakete deinstallieren ist ein sicherer Weg sich das System komplett unbrauchbar zu machen. Lass diesen Unsinn.


    Insbesondere verstehe ich nicht so ganz was es bringen soll Pakete von der Linux-Distribution zu deinstallieren wenn sich Python-Pakte aus dem Python Package Index nicht installieren lassen.


    „kommt es zu einem Fehler“ ist auch keine wirklich sinnvolle Problembeschreibung bei der man irgendwie helfen könnte, ausser das man sagen kann, das Captain Obvious sagt, dann ist da wohl ein Problem. ?

    😡 Host Europe hat alle meine Emojis gefressen! 😭

  • Hallo,


    ja, dass das Internet nicht immer ein guter Ratgeber ist, habe ich jetzt auch (mehrfach) gemerkt.


    Ich habe es mit der Installation von PyLoad und PyLacrosse versucht. Beides wird per PIP installiert und beides verursacht dann diesen folgenden Fehler.
    PyLoad-Anleitung: https://github.com/pyload/pylo…nstallation-(RaspberryPi)

    PyLacrosse: https://pypi.org/project/pylacrosse/

    Vielen Dank und Grüße,
    Mic.

  • pylacrosse gibt es nur bis Python 3.6, da wirst Du Probleme mit Deinem 3.9 bekommen.

    Warum?
    M.E. nach gibt es da wenig Probleme, ggf. muss man sich die GIT Sourcen mal ansehen und ggf. nachschleifen...

    Ich würde es aber erstmal versuchen.


    Der Tip in #5 ist ok: Die meisten Probleme kommen oft vom veralteten pip... hatte ich auch schon

  • Das steht da weil das vor drei Jahren das letzte mal angefasst wurde. Aber es hat nur pyserial als Abhängigkeit und ist reines Python. Im Package-Index gibt es auch nur ein allgemeines Quelltext-Archiv für alle Python-Versionen. Grundsätzlich spricht also erst einmal nichts dagegen, dass das auch mit Python 3.9 oder auch dem aktuellsten laufen könnte. Der Maintainer hat's halt nicht ausprobiert.

    😡 Host Europe hat alle meine Emojis gefressen! 😭

  • Hallo zusammen,


    zuerst einmal vielen Dank für eure Tipps und Gedanken. Aktuell bin ich noch dran, meinen RasPi wieder mit allem anderen aufzusetzen, was ich drauf habe. Wenn das alles wieder läuft, mache ich ein Backup und danach kann ich wieder „experimentieren“.


    By the way… Ich habe eine 2TB SSD am RasPi, auf dem auch das System installiert ist. Wie kann ich am besten eine Sicherung („Image“) davon ziehen? Das kann gern auch per USB am Windows PC sein.


    Gestern trat das besagte PIP-Problem auf, nachdem ich folgende beiden Befehle (aus der Anleitung für pyLoad) ausgeführt hatte:


    Code
    sudo apt install python3 python3-pip python3-pil python3-openssl libcurl4-openssl-dev libssl-dev p7zip ffmpeg tesseract-ocr
    sudo pip3 install --pre pyload-ng[all]


    Soll ich dies wieder tun oder (insbesondere den ersten Befehl) nicht ausführen und stattdessen deine Befehle nutzen:


    Code
    python3 -m pip install -U pip
    python3 -m pip install -U pyopenssl


    Weiterhin: Gäbe es auch eine Möglichkeit die benannten Tools (pyLoad und PyLacrosse) auf einem anderen Weg (ohne PIP) zu installieren. Gerade PyLacrosse kann man auch als


    pylacrosse-0.4.tar.gz herunterladen. Darin befindet sich dann u.A. eine Datei setup.py.


    Vielen Dank!


    Grüße,

    Mic.

  • Mic2022 Im Falle von PyLacrosse macht ``pip`` nichts anderes als dieses Archiv herunterzuladen und die ``setup.py`` auszuführen.


    Grundsätzlich sollte man sich fragen ob/was man mit ``pip`` systemweit installieren will/muss. Wenn man das nur für den Benutzer macht, dann zerschiesst man sich mit dieser Fremdquelle maximal das Python-Ökosystem für diesen Benutzer, und wenn man gar venvs verwendet, dann nicht einmal das. Man muss da immer bedenken, dass man Software/Bibliotheken an der Paketverwaltung von der Linuxdistribution vorbei installiert, und das natürlich auch Abhängigkeiten von darüber installierten Programmen/Bibliotheken betreffen kann.


    Insbesondere wenn man da ein ``--pre`` benutzt, sollte man die möglichen Effekte vom System isolieren.

    😡 Host Europe hat alle meine Emojis gefressen! 😭

  • Hallo Blackjack,


    ich kenne mich damit (noch) nicht so gut aus aber sowas in der Art hatte ich mir gedacht. Heißt das, ich könnte die Datei pylacrosse-0.4.tar.gz herunterladen, entpacken und dann einfach die Datei setup.py ausführen und somit PIP „umgehen“? Dann würde ich in den Fehler evtl. gar nicht reinlaufen. Das wäre dann eine Lösung für PyLacrosse.


    Wie würde ich dann deiner Meinung nach pyLoad „besser und sicherer“ installiert bekommen als mit den o.g. Befehlen? Sollte man all die Pakete in der langen ersten Befehlszeile so ausführen und installieren oder liegt da schon genügend Fehlerpotential drin?


    Am liebsten würde ich auch alles über den RasPi Paket-Manager installieren, aber wenn viele interessante Projekte nur auf diesen „Umwegen“ angeboten werden… Was kann man da machen?


    Vielen Dank!


    Grüße,

    Mic.

  • Spätestens wenn man ``--pre`` verwendet, also Sachen installieren will, die noch gar nicht offiziell veröffentlicht sind, würde ich ein venv verwenden. Denn da kann es ja sogar ganz normal sein, das irgendwas noch nicht so rund funktioniert. Also ein venv anlegen, aktivieren, dort ``pip`` aktualisieren und das „wheel“-Package installieren, und dann was immer da rein soll. Das ist dann vom Rest des Systems isoliert.


    Das `venv`-Modul ist Bestandteil der Standardbibliothek und dort auch dokumentiert.

    😡 Host Europe hat alle meine Emojis gefressen! 😭

  • Hallo zusammen,


    lang, lang ist es her… aber ich hab’s nicht vergessen. Ich bin von dem hier beschriebenen Problem leider in ein Problem nach dem anderen geschlittert. Auf die Fragestellung, wie ich mein funktionierendes System sicher kann, bevor ich Experimente mache, habe ich wie hier diskutiert mit raspiBackup lösen können. Nur ein Problem mit einem wiederkehrenden Emergency Boot, wie hier beschrieben, konnte ich noch nicht lösen.


    Ich konnte danach auch pyLoad wieder installieren, welches ja auch auf Python-Pakete basiert und sich vor der aktuellen Neuinstallation des Systems nicht mehr installieren lies.


    Jetzt habe ich mich auch an pyLacrosse wieder versucht… und bin gescheitert. Der Befehl pip install pylacrosse endete direkt in folgender Fehlermeldung:



    Meine Frage ist nun, habe ich mit dem Versuch pyLacrosse zu installieren mein Python PIP wieder „abgeschossen“ oder ist der Installer von pyLacrosse hier fehlerhaft? Was sagt ihr?


    Vielen Dank für eure Rückmeldung!


    Grüße,

    Mic.

  • Tja, jetzt hat es mich wieder erwischt. Python geht nicht mehr. Wahrscheinlich einfach der Versich pyLacrosse zu installieren, hat es abgeschossen. Mein pyLoad funktioniert nicht mehr und ein Versuch ein Update per Python PIP zu machen führt nun auch hier zum Fehler.


    So ein Mist. :(

  • Mic2022 „Jetzt hat es mich wieder erwischt“ klingt so ein bisschen als wärst Du ein passives Opfer und nicht selbst aktiv schuld. Grundsätzliche können Fremdquellen das System gefährden. Wenn man sich dann auch noch mit ``--pre`` Sachen ins System holt, die nicht mal ausgereift als normale Veröffentlichung von den Entwicklern selbst eingestuft werden, und das dann auch noch mit Admin-Rechten systemweit installiert, muss man mit Problemen rechnen. So etwas gehört in ein venv wo es nichts kaputt machen kann, ausser diese Umgebung, die aber ansonsten nichts weiter stört.

    😡 Host Europe hat alle meine Emojis gefressen! 😭

  • Hallo zusammen,


    ja, mir ist schon bewusst, dass ich die Knöpfe drücke, die dazu führen, dass irgendwas schiefläuft. Das komisch an der Sache ist, dass ich gestern Abend, als e "wieder passierte" nicht versucht habe pyLacrosse zu installieren. Ich hatte mein System mit raspiBackup gerade frisch wiederhergestellt (alles lief) und dann folgende zwei Dinge gemacht:


    1.) Den Ordner /drives angelegt und die Mount-Punkte meiner (Netz-)Laufwerke drin gepackt.

    2.) Ein von RasPi OS vorgeschlagenes Update für LibreElec (oder so ähnlich) ausgeführt. (Seit Bulleseye gibt es in der grafischen Oberfläche einen Update-Hinweis, wenn es was Neues gibt. Diesen nutze ich ganz gern.)


    Irgendwie fällt es mir schwer zu glauben, dass das die Ursache des erneuten "Abschmierens" war. Dennoch war pyLoad nach ein paar Reboots "tot".


    Jetzt habe ich den alten Wiederherstellungspunkt via raspiBackup erneut wiederhergestellt. (Mann, bin ich froh, dass ich diese Möglichkeit jetzt habe.) Danach habe ich nur noch Punkt 1.) ausgeführt. Seitdem läuft der pyLoad Service ohne Probleme. (Ich habe gleich danach ein neues Backup erstellt.) Das unter 2.) beschriebene Update habe ich nicht manuell ausgeführt. Es wird aber heute dennoch nicht mehr als Verfügbar angezeigt.


    Jetzt frage ich mich eben, wie ich weitermache, damit nicht wieder alles in sich zusammenbricht und ich in einer endlosen "Ausprobieren --> Systemwiederherstellen --> Ausprobieren --> System wiederherstellen"-Schleife lande.


    Vielen Dank auf jeden Fall an euch.


    Grüße,
    Mic.

  • Mic2022 Die Frage ist wie stabil oder halt auch schon zerbastelt das System aus der Sicherung schon ist. Denn wenn da pyLoad schon drin ist in dem System, und das nicht aus den Paketquellen der Distribution kommt, und auch mit ``--pre`` systemweit installiert wurde, dann wäre *das* ja schon ein Punkt der für aktuelle oder spätere Probleme mitverantwortlich sein kann.


    RasPi OS sollte eigentlich keine Updates für LibreElec vorschlagen, weil LibreElec eine Linuxdistribution ist und kein Paket von RasPi OS.


    Wenn man sich Fremdquellen ins System holt ist das potentiell gefährlich. Wenn das Linux-Distributionspakete sind, die für die verwendete Version von der verwendeten Distribution gebaut wurden, und falls es sich um reine Anwendungsprogramme handelt ist das in der Regel unproblematisch, weil man dann nur ein Programm zusätzlich installiert, das die Bibliotheken benutzt/nachinstalliert, die zu der konkreten Distribution gehören. Im schlimmsten Fall läuft dann genau das Programm nicht.


    Kritischer wird es wenn man Dienste aus Fremdquellen installiert, die bei der Installation an der Systemkonfiguration herumschrauben. Da kann dann was kaputt gehen, so das auch andere Dienste nicht mehr laufen, die von der Konfigurationsänderung betroffen sind.


    Gefährlich ist das installieren am Distributionspaketmanager vorbei von Sachen die nicht nur einfach was zusätzliches installieren was das System sonst nicht kennt, sondern auch noch Bibliotheken installiert/austauscht/aktualisiert die auch vom System verwendet werden. Also das was passiert wenn man mit ``pip`` Programme oder Bibliotheken installiert. Steigern kann man das noch in dem man absichtlich sagt, das es okay ist auch Bibliotheken zu installieren, von denen die Entwickler selbst sagen, die sind noch nicht ausgereift genug um sie regulär zu veröffentlichen. Da wird irgendwann mal was kaputtes dabei sein. Und alle Programme/Bibliotheken die das benutzen, sind davon dann auch betroffen. Und wenn das was ist was ``pip`` betrifft, wird man ab da ``pip`` nicht mehr benutzen können.


    Die einfache Lösung bei Python ist so etwas nicht systemweit zu installieren, sondern in ein venv zu stecken. Dann ist das vom Rest des Systems isoliert, und wenn etwas kaputt geht, dann nur in dem venv.

    😡 Host Europe hat alle meine Emojis gefressen! 😭

  • Hallo __blackjack__ ,


    vielen Dank für deine Ausführungen. Da sind viele interessante Überlegungen drin.


    Ich habe seit zwei Tagen nicht mehr an meinem RasPi "rumgefummelt" und seit dem ist der pyLoad Dienst problemlos erreichbar. Alles läuft, wie es soll.



    Ich hatte mich wahrscheinlich verguckt. Das (oder ein) Update wurde heute wieder angeboten. Es ist kein Update für LibreElec sondern für libflac8. Kann dieses ein Problem verursacht haben? (Ich habe bisher noch nicht auf "Install" geklickt).



    Ich habe auf meinem RasPi LibreOffice (via sudo apt-get install libreoffice-l10n-de) installiert. Vielleicht kommt es daher.


    Jetzt frage ich mich, wie ich pyLacrosse ohne neue Pleiten, Pech & Pannen auf den RasPi bekomme. Könnte es helfen, wenn ich PIP-Install nicht nutze und stattdessen das Skript (siehe hier) herunterlade und dirkt ausführe.


    Vielen Dank und ein schönes Wochenende.

    Grüße,
    Mic.