Seite 1 von 1

Python Script als Standalone kompilieren

Verfasst: Samstag 29. Februar 2020, 21:10
von jesse
Hallo,

welche Möglichkeiten habe ich ein Python2 Skript als Standalone zu kompilieren, das es den Interpreter nicht braucht bzw. selbst mitbringt.

Vielen Dank!

Re: Python Script als Standalone kompilieren

Verfasst: Sonntag 1. März 2020, 07:43
von sparrow
Python 2 ist seit Anfang des Jahres tot. Du solltest entsprechend auf Python 3.x upaten.

Das, was du tun willst, ist nicht, was man unter Kompilieren versteht.

Es gibt ausführlich und viele Themen hier im Forum. Eins ist noch keine 48 Stunden alt. Ich habe früher gerne pyinstaller genommen.

Wenn dieses unter Python unübliche Ausliefern dazu dienen soll, Quellcode zu verschleiern, solltest du dein Viehaben sein lassen. Dafür ist es die falsche Programmiersprache.

Re: Python Script als Standalone kompilieren

Verfasst: Sonntag 1. März 2020, 07:53
von jesse
Hallo und Guten Morgen sehr geehrter sparrow :-)

Ich weiss das Python 2 tot ist und deswegen auch Debian Linux auf Python 3 umstellt. Mit dieser Umstellung wird wohl auch Zenmap entfernt. Was auch der Grund ist, warum ich hier anfrage.
Ich erhoffe mir eine Lösung Zenmap als Standalone so dann auch unter Debian testing/Sid und später Bullseye weiter nutzen zu können.

Ich habe schon cx_freeze in Version 5 kurz probiert. Aber das scheint nur Windows und MacOS zu unterstützen.

Re: Python Script als Standalone kompilieren

Verfasst: Sonntag 1. März 2020, 09:37
von Sirius3
Wenn es Zennap nicht schafft auf python3 umzusteigen, dann ist es bald auch tot. Es ist halt sehr unüblich unter Linux ein Skript zu verpacken. Geradedie vielen Abhäbgigkeiten zu einer GUI machen das nicht einfacher. Die moderne Lösung heißt Container.

Re: Python Script als Standalone kompilieren

Verfasst: Sonntag 1. März 2020, 09:41
von __deets__
Oder snaps/flatpacks.

Re: Python Script als Standalone kompilieren

Verfasst: Sonntag 1. März 2020, 09:44
von jesse
__deets__ hat geschrieben: Sonntag 1. März 2020, 09:41 Oder snaps/flatpacks.
Stimmt, diese sind dann nicht getrennt vom "Userspace"? Kann das Debian mittlerweile, dazu werde ich mal weiter lesen!

Re: Python Script als Standalone kompilieren

Verfasst: Sonntag 1. März 2020, 09:49
von jesse
Sirius3 hat geschrieben: Sonntag 1. März 2020, 09:37 Wenn es Zennap nicht schafft auf python3 umzusteigen, dann ist es bald auch tot.
IMO ist es das Heute schon und wir schon länger nicht mehr aktiv weiterentwickelt. Aber es funktioniert noch.

PS: X-Post (von mir) https://debianforum.de/forum/viewtopic.php?t=176547

Re: Python Script als Standalone kompilieren

Verfasst: Sonntag 1. März 2020, 09:50
von nezzcarth
Mir gefällt das Konzept hinter snappy eigentlich nicht, aber vielleicht wäre es in dem Fall doch zumindest eine mittelfristige Lösung, mal zu schauen, ob es ein snap Paket von (ze)nmap gibt und dann das zu verwenden. Darin sollte dann ja alles enthalten sein, einschließlich des veralteten Python Interpreters (s. https://snapcraft.io/docs/python-apps).

Re: Python Script als Standalone kompilieren

Verfasst: Sonntag 1. März 2020, 13:00
von __blackjack__
Hier ist das entsprechende Issue zu zenmap (und ndiff) und Python 3: Zenmap and Ndiff are python2 only.

Problem ist ja nicht nur der Schritt von Python 2 nach 3 sondern das auch die Gtk2-Anbindung `pygtk` hoffnungslos veraltet ist und man also gleichzeitig auf Gtk3 und Anbindung per GObject-Inspection portieren muss. Es reicht also nicht 2to3.py oder futurize da drüber laufen zu lassen und hier und da mal etwas von Hand anzupassen.