Python in exe umwandeln?
Hey, ich würde gerne eine Python Datei in eine exe umwandeln. Leider bringen mich die meisten Tutorials nicht weiter, da ich viele Python Erweiterungen wie PyInstaller oder Py2exe nicht installieren kann. Ich bekomme immer zum Schluss eine Fehlermeldung. Kann mir jemand helfen?
PS: Ich bin nicht sehr erfahren. Eine Schritt für Schritt Anleitung wäre daher schön :)
2 Antworten
https://www.youtube.com/watch?v=nWOoky0PTVY
ps: python ist und bleibt eine script sprache also kann es natürlich immer zu fehlermeldungen kommen am besten einfach als script lassen und einfach eine instaleer für dein script schreiben das den interpretor mit installiert
Hey auf stackoverflow steht https://stackoverflow.com/questions/36191922/py2exe-error-namespace-packages-not-yet-supported-skipping-package-snowflake
also denke ich das du was beim import von den paketen falsch gemacht hast einfach mal ausklammern und testen das script bzw exe funktioniert zwar dann nicht aber dann weißt du wenigstes an was es liegt
Danke :) Welchen Import welcher Pakete meinst du? Ich kann dir hier leider nicht so ganz folgen.. Und wie klammere ich sie aus?
nja soweit ich das verstanden habe die bei denen du einen fehler bekommst und ausklammer tust du sie mit # ich mache immer gerne ## auch gut um sachen im code zu vermerken
Hey, danke. Leider wird mir immer noch eine Fehlermeldung angezeigt. Ich konnte py2exe zwar vermutlich installieren, allerdings bekomme ich, wenn ich eine Datei umwandeln möchte, immer noch eine Fehlermeldung: "IndexError: tuple index out of range"...
PS: Ich möchte es aber wirklich gerne umwandeln :)
habe mal nachgelesen https://stackoverflow.com/questions/41578808/python-indexerror-tuple-index-out-of-range-when-using-py2exe
welche "version" von python benutzt du den sowie ich das verstehe wir python 3.6 von py2exe noch nicht unterstütst(ist bei vielen modulen so das neuere python versionen erst später unterstützt werden) jedoch steht auf der py2exe pypi seite
python 3.3 or later also eigentlich auch 3.6 würde trotzdem einfach mal auf python 3.3 "wechseln" und schauen ob der/die/das error XD dann nicht weg ist
mfg simon
Vielen Dank. Jetzt ging es tatsächlich :D
Wenn ich diese Datei nun jemand anderem zusenden möchte, der kein Python installiert hat, genügt es dann, dieser Person "nur" die so erstellte exe zu senden oder müssen die anderen Dateien, die ebenfalls im Ordner sind, auch mitgesendet werden?
angenomen deine python "exe" soll ein foto öffnen dann must du das foto natürlich mit schiken
sonst einfach mal testen ordner in zwischen ablage kopieren, exe "raus" ziehen und dann den ordner löschen die exe öffnen und schauen ob es geht :) wenn nicht strg+v und der ordner ist wieder dah :)
Hier eine weitere Möglichkeit Python-Programme in EXE zu kompilieren. Dazu benötigt man folgendes:
Zuerst muss man Python zur Windows PATH Umgebungsvariable hinzufügen. Das geht so: http://techmixx.de/windows-10-umgebungsvariablen-bearbeiten/
- MinGW-Compiler: https://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win32...
- Nuitka: http://nuitka.net/releases/Nuitka-5.1.300.win-amd64.py36.msi
Dieses auch zur Windows-PATH-Umgebungsvariable hinzufügen. Und so kompiliert man damit: Zuerst erstellt man sich einen Ordner. Als Name kann z.B. Python-Projekte genommen werden. Dort speichert man das geschriebene Python-Programm ab. Dann geht man in diesen Ordner, klickt mit der rechten Maustaste rein und wählt Powershell oder Eingabeaufforderung. Dann folgenden Befehl eingeben und mit Enter abschließen:
- nuitka --recurse-all --standalone programmname.py
Das erzeugt in dem Ordner Python-Projekte 2 weitere Ordner. Einmal programmname.build und programmname.dist. Der Ordner programmname.build kann nach dem Kompilieren gelöscht werden. Im Ordner programmname.dist befindet sich das kompilierte Python-Programm mit dem Namen programmname.exe und allen benötigten Laufzeitbibliotheken.
Als letzten Schliff hat man noch die Möglichkeit das fertig kompilierte Programm in ein Installationspaket zu verpacken. Dazu benötigt man Inno Setup: http://jrsoftware.org/download.php/is.exe Inno Setup verpackt das ganze und erzeugt dann daraus ein Installationspaket mit dem Namen setup.exe.
Hey, ich muss mich jetzt doch noch einmal melden:
Nachdem es zunächst funktioniert hat, wollte ich erneut etwas "umwandeln". Nun funktioniert es nicht mehr, obwohl ich alles genau so mache wie zuvor. Python 3.3 ist installiert, py2exe ebenso. Nur in der Zwischenzeit habe ich wieder zu Py 3.7 und anschließend wieder zurück zu 3.3 gewechselt. Wie bei meinem ersten Versuch, habe ich aber alle Programme sorgfältig de- und neuinstalliert. Dennoch erhalte ich nur eine Fehlermeldung...
https://www.bilder-upload.eu/bild-9937bd-1548612267.png.html
https://www.bilder-upload.eu/bild-4f25c0-1548612314.png.html