binaercode

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo liebes Forum,

    ich habe ein Problem, wenn ich den PI nur den Binaercode (pyc) von Python uebergebe,
    dann kann er das Programm nicht ausfuehren. Auf meinem Linux Rechner geht das Problemlos.
    Weiss einer warum das so ist, oder mache ich einen Fehler.
    Der Hintergrund ist, dass ich nicht den Quellcode mit Kommentaren offen liegen haben moechte.

    Schoene gruesse Willi

  • Bei Python weiß ich es nicht genau, aber ich würde normalerweise sagen, dass Problem liegt an der unterschiedlichen Architektur. Dein Linux Rechner hat den Binärcode vermutlich für x86 erstellt, der PI arbeitet aber mit ARM. Daher auf einem passenden ARM Rechner (vorzugsweise natürlich der PI) den Quelltext neu übersetzen lassen.

  • Dank fuer die schnellen Antworten,

    ja ich glaube das koennte es sein.
    Ich habe die Binaerdistributtion mit bdist_rpm gemacht, das ist zwar fuer Linux aber ob das fuer den PI passt?
    Nur wo bekommt man so ein bdist_xxx fuer den PI her. Google hatte keine Antwort

    Schoene gruesse Willi

  • Hallo,

    Zitat

    Der Hintergrund ist, dass ich nicht den Quellcode mit Kommentaren offen liegen haben moechte.


    Dein Weg ist für dein Anliegen IMHO auch ziemlich falsch.

    Es genug Programm, die Python Byte-Code zuverlässig in (lesebaren) Quellcode zurück wandeln. Von daher schützt du so deinen Code nichts, du baust nur eine kleine Hürde ein.

    Und bzgl. der Kommentare: dann entfern' die doch einfach vor der Weitergabe der Dateien. Das kann man ja auch automatisieren.

    Wenn du deinen Code (intellektuell) schützen willst, dann stell' ihn unter eine restriktive Lizenz, die hinreichend Schutz bietet.

    Zitat

    Ich habe die Binaerdistributtion mit bdist_rpm gemacht, das ist zwar fuer Linux aber ob das fuer den PI passt?


    Der erste Teil des Satzes stimmt so nicht - RPM ist _ein_ Paketformat für Linux - aber nicht das einzige. RPM wird z.B. von Red Hat, Fedora und Suse genutzt. Debian, Ubuntu, Raspbian setzen auf DEB und Arch hat noch ein anderes Format.
    Also passt das Paketformat für den Pi nur, wenn du a) eine RPM-basierte Distro hast oder b) das RPM-Paket mit `alien` in ein DEB-Paket wandelst.

    Wobei man Python-Module aber üblicherweise heutzutage als Wheel-Paket ausliefert.

    Gruß, noisefloor

    Gruß, noisefloor

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!