Python ausliefern
-
Ich will aber aus meinen Python Skripts keine .exe Dateien bauen und ich will unter Linux sichergehen, dass Python 2.7.3 installiert ist.
-
Am besten lieferst du die Python in einer gut gesicherten Box aus jedoch sollte diese Box über genügend Luftlöcher verfügen damit du die Tierschutzbestimmungen einhältst und die Schlage nicht stirbt! So kann du die Schlange deinem Kunden ausliefern.
Wieso sollte der Python Interpreter die DLL´s nicht finden wenn auf dem Zielsystem Python installiert ist? Das ganze ist doch Plattformunabhängig.
-
Bassmaster schrieb:
Wieso sollte der Python Interpreter die DLL´s nicht finden wenn auf dem Zielsystem Python installiert ist? Das ganze ist doch Plattformunabhängig.
Ich habe doch extra gleich im 2. Satz geschrieben, dass ich Python NICHT installieren will...
-
Die Standardlösung ist eigentlich etwas wie PyInstaller.
Ansonsten kann man unter Linux python freeze benutzen und unter Windows Py2Exe.
-
Oops, sry hab nicht richtig gelesen.^^
Aber trotzdem du willst Python nicht installieren auf Windows du willst keine Exe Datei aus dem Python Script erstellen. Aber du willst das dein Python Script auf dem Windows System ausgeführt wird?
[/quote]Das Windows Skript wird einfach nur den Python Interpreter starten. Unter Win werden die .dll Dateien des Python Interpreter wohl von alleine gefunden, da sie neben dem Interpreter Executable liegen, oder?[quote="PetryPython"]
Und die Python DLL´s lädst du dir ausm Internet oder wo auch immer und kopierst die auf dein Windows System da du ja Python nicht installieren willst? WTF
Entweder versteh ich da was falsch oder du schreibst Unfug.^^
-
Du verstehst es (schon wieder) falsch.
Irgendwie ging bis jetzt niemand wirklich auf meine Frage ein. Ich habe jetzt schon mehrmals gesagt, dass ich KEINE exe bauen will und auch nicht Python auf dem System installieren will, sondern es in meiner Anwendung LOKAL mitliefern will.
Kennt jemand ein gutes Python Forum? Vielleicht find ich da jemanden mit Ahnung.
-
Kein Python installieren und keine Exe erzeugen. Mhh, hört sich für mich so an, als ob du sowas wie portable python ( http://www.portablepython.com/ ) suchst.
http://www.python-forum.de/ ist ein gutes deutsches Python-Forum.
-
PetrPython schrieb:
Irgendwie ging bis jetzt niemand wirklich auf meine Frage ein. Ich habe jetzt schon mehrmals gesagt, dass ich KEINE exe bauen will und auch nicht Python auf dem System installieren will, sondern es in meiner Anwendung LOKAL mitliefern will.
Die Idee ist halt einfach ziemlich dumm. Deshalb wird dir hier besseres vorgeschlagen.
Portable Python läuft zB nur auf Windows.
Es hat seine Gründe warum man PyInstaller verwendet.
-
Shade Of Mine schrieb:
PetrPython schrieb:
Irgendwie ging bis jetzt niemand wirklich auf meine Frage ein. Ich habe jetzt schon mehrmals gesagt, dass ich KEINE exe bauen will und auch nicht Python auf dem System installieren will, sondern es in meiner Anwendung LOKAL mitliefern will.
Die Idee ist halt einfach ziemlich dumm. Deshalb wird dir hier besseres vorgeschlagen.
Portable Python läuft zB nur auf Windows.
Es hat seine Gründe warum man PyInstaller verwendet.
Was soll daran bitte schlecht sein, Python mitzuliefern? Weil es DIR nicht gefaellt?
Und jetzt zum 3. Mal: PyInstaller ist keine Option, da ich NICHT (!!!!!!!!!) eine fertige .exe haben will (und aus technischen Gruenden auch nicht haben kann).
Danke fuer nichts.
-
PetrPython schrieb:
Was soll daran bitte schlecht sein, Python mitzuliefern?
Es nimmt viel Platz weg und ist dann nur für ein OS.
PetrPython schrieb:
Und jetzt zum 3. Mal: PyInstaller ist keine Option, da ich NICHT (!!!!!!!!!) eine fertige .exe haben will (und aus technischen Gruenden auch nicht haben kann).
Warum eigentlich? Vielleicht lässt sich dieses Problem ja lösen.
PetrPython schrieb:
Danke fuer nichts.
Naja, du hast eine Lösung (in deinem Sinne) für Windows erhalten (python portable), und erklärt bekommt, warum diese Lösung nicht toll und, und was bessere Alternativen sind. Was willst du mehr?
-
Also unter Linux einen eigenen Python-Interpreter mitliefern halte ich für grenzdebil. Python ist doch praktisch allgegenwärtig auf den Distributionen. Warum muss es denn unbedingt Python 2.7.3 sein? Gibts dafür tatsächliche Gründe? Dann dokumentiere diese Anforderung halt.
Wie gedenkst du die von dir aufs System geklatsche Python-Distribution dann in Zukunft zu pflegen? Sicherheitsupdates usw? Wenn du einfach den Systeminterpreter nutzen würdest, wäre das alles automatisch. Ganz abgesehen davon, dass es dem Nutzer auch bestimmt lieber ist, als von dir ein Binary vorgesetzt zu bekommen, das nur mit einer Architektur funktioniert. Wenn du nicht aufpasst, funktioniert es wahrscheinlich nichtmal auf allen Distributionen einer Architektur. Weißt du denn, worauf du da achten musst, damit es keine Probleme gibt?
Aber naja, wenn dus trotzdem unbedingt machen willst:
der Interpreter sucht die Standardmodule (über sys.path) erst im CWD, dann im PYTHONPATH. Wenn er da nix findet, guckt er unter prefix/lib/pythonversion. Prefix ist dabei der Pfad, den du dem configure-Skript übergeben hast
-
Was soll daran bitte schlecht sein, Python mitzuliefern? Weil es DIR nicht gefaellt?
unter windows muesstest schon hellseher sein, oder unbedingt ne statisch gelinkte python.exe mitliefern ^^
Die meisten sind leider dynamisch, so dass unter unguenstigen umstaenden deine mitgelieferte python.exe gar ned starten kannst auf dem fremden system.das nur unter windows ^^
unter linux hab ich zumindest bei ubuntu in letzten halben jahr 3 mal die libc / libcpp ausgetauscht bekommen ^^ folglich ist auch das python binary getauscht wurden (dependencies). wenn du dein eigenes python mitlieferst, sollte das nicht von den dynamischen libs auf dem comp abhaengig sein. viel spass beim selber bauen von python mit statischen runtimes ...
Und eigentlich geht das an dem prinzip eine scriptsprache vorbei was du willst. Kein wunder dass dir hier keiner helfen will/kann ...
Möglich ist es theorethisch, nur ne menge Aufwand fuer eine ... Idee, dessen Problem sich sicher anders loesen laesst.Ciao ...