Die Abhängigkeiten von py2exe

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
globox
User
Beiträge: 20
Registriert: Freitag 6. Mai 2005, 14:50
Kontaktdaten:

Samstag 7. Mai 2005, 01:44

Noch ne kleine frage: :oops: Mit py2exe kann man ja compilen. aber laufen die exe nich auf Pcs wo garkein python drauf haben?! Beim freund gings nämlich eben nicht
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Samstag 7. Mai 2005, 06:51

globox hat geschrieben: aber laufen die exe nich auf Pcs wo garkein python drauf haben?! Beim freund gings nämlich eben nicht
Hi globox!

Ich habe es zwar noch nie verwendet, aber der Sinn von py2exe sollte sein, dass *kein* Python auf dem Zielrechner installiert werden muss, da py2exe alle benötigten Dateien zusammenpackt.
Vielleicht wurde nicht jede Abhängigkeit von py2exe erfasst.

mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
globox
User
Beiträge: 20
Registriert: Freitag 6. Mai 2005, 14:50
Kontaktdaten:

Samstag 7. Mai 2005, 12:57

Ich hab mal nen Kollegen gesagt das er die exe ausführen soll und bei ihm kam die Fehlermeldung das "python24.dll" fehlt
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Samstag 7. Mai 2005, 13:17

Bei py2exe reicht es nicht einfach nur die exe Datei zu kopieren, du musst den ganzen 'dist'-Ordner nehmen, dort sind die python24dll und einige andere nötige Dateien drin.

Ich glaube, ich splitte den Thread...

Edit (Leonidas): Diesen Thread von Rausfinden wo Programm liegt? gesplittet
My god, it's full of CARs! | Leonidasvoice vs Modvoice
globox
User
Beiträge: 20
Registriert: Freitag 6. Mai 2005, 14:50
Kontaktdaten:

Samstag 7. Mai 2005, 13:27

Hmm ist es nicht möglich das man die nötigen datein auch mit in die exe integriert? So das es wirklich auf ein pc läuft der weder Python noch py2exe installiert hat?
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Samstag 7. Mai 2005, 13:45

Wenn du die Dateien aus dem dist Ordner auf einen anderen PC bringst, braucht dieser kein py2exe oder Python.

Und wenn du nur eine EXE willst, kannst du NSIS nutzen..
My god, it's full of CARs! | Leonidasvoice vs Modvoice
globox
User
Beiträge: 20
Registriert: Freitag 6. Mai 2005, 14:50
Kontaktdaten:

Samstag 7. Mai 2005, 14:31

Hui ist das kompliziert... kann mir da jemand vieleicht helfen?
Hab das NSIS geladen und den compiler gestartet nur versteh ich nich ganz wie das funktioniert mit den compiler.

Oder kennt jemand ein deutsches Tutorial dafür oder so? :oops:

edit:

Habs schon geschafft. Ist super. Das einzigste was nich so toll ist das die über 3 mb groß sind.. aber was soll man machen danke :D
Olliminator

Dienstag 24. Mai 2005, 23:40

Und woran hats gelegen?
Bei mir funzt es auch nicht. Die nicht funktionirende EXE war dann gepackt auch grösser als dir GUI nur mit py2exe.
Ich glaube es wäre praktisch wenn die DLLs nicht mit eingepackt würden.
globox
User
Beiträge: 20
Registriert: Freitag 6. Mai 2005, 14:50
Kontaktdaten:

Donnerstag 26. Mai 2005, 14:26

Ollimator: Das doofe an den exen sind das sie nichts in der commando zeile ausgeben können. Das Programm läuft zwar aber nichts in der commandozeile :)

globox
Benutzeravatar
Toni83
User
Beiträge: 125
Registriert: Donnerstag 28. Juli 2005, 10:53

Donnerstag 28. Juli 2005, 13:08

Servus globox,

Das ist nicht ganz richtig. Wenn du die *.exe mit der Eingabeaufforderung erstellst musst du nur in den Installationsordner von Python gehen. Dort sollte auch dein Programm und die setup.py vorhanden sein. Nun gibst du in der Eingabeaufforderung folgendes ein:
python setup.py py2exe

Die setup.py sollte so aussehen:

Code: Alles auswählen

from distutils.core import setup

import py2exe

# und dann entweder:

setup (windows = ["Programmname"])

# für die exe Version ohne Kommandozeile
# oder:

setup (command = ["Programmname"])

# mit der Kommandozeile
Schon dürften die Ausgaben in der Kommandozeile wie auch in einer grafisch erstellten Oberfläche erscheinen.


Gruss,
Toni

Edit (Leonidas): Code in Python-Tags gesetzt.
Benutzeravatar
Masaru
User
Beiträge: 425
Registriert: Mittwoch 4. August 2004, 22:17

Freitag 5. August 2005, 22:21

Als "SingleFile" PythonCompiler kann man auch noch: Gordon McMillan's Python Compiler
verwenden.

Ist recht einfach 'eigentlich' zu bedienen, und man kann Executables für so ziehmlich fast alle Plattformen herstellen (wobei entsprechende plattform zum herstellen natürlich verwendet werden muss ;) ).

Für Windows kann man auch Icons, Versionfiles und ein paar weitere interessante Features einbinden.

>>Masaru<<
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Freitag 5. August 2005, 22:40

Masaru hat geschrieben:Als "SingleFile" PythonCompiler kann man auch noch: Gordon McMillan's Python Compiler
verwenden.
Ja, aber Gordon McMillans Seite ist schon lange down und im Mirror fehlen die Installer Dateien. Paul Baranwoski hatte die neuesten Releases (Version 6 glaube ich), jedoch ist nun auch seine Seite down.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
Gast

Samstag 6. August 2005, 00:19

Das liegt dadran, dass der Link auf der "Download"-Seite falsch ist.

Das Download-Verzeichnis:
http://davidf.sjsoft.com/mirrors/mcmillan-inc/dnld/
bietet einem eine Hand voll von McMillians Installern.

Darunter ist auch die von dir angesprochene neuste Release Version 6a2.

>>Masaru<<
Benutzeravatar
jens
Moderator
Beiträge: 8483
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Samstag 6. August 2005, 08:11

Die ganze Webseite existiert als Mirror:
http://davidf.sjsoft.com/mirrors/mcmillan-inc/

In der History ist allerdings die letzte Version die v5b5_4 :?

CMS in Python: http://www.pylucid.org
GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Antworten