Python verwenden ohne das Python Installiert wurde

Probleme bei der Installation?
Kalli87
User
Beiträge: 281
Registriert: Montag 10. November 2014, 11:27

Guten Morgen :-)

das eine Programm was ich geschrieben habe soll jetzt auf PC´s laufen wo kein Python installiert wurde/ist.
Das heisst ja das ich irgendwie die Python-Bibliotheken irgendwie mitliefern muss und in einem Shell-Script einbinden muss (also das vermute ich mal das es so funktionieren kann).
Kennt sich da einer aus?

Danke
Benutzeravatar
MagBen
User
Beiträge: 799
Registriert: Freitag 6. Juni 2014, 05:56
Wohnort: Bremen
Kontaktdaten:

py2exe verwende ich in meinen Projekten dafür.
Hier wurde das vor Kurzem diskutiert: http://www.python-forum.de/viewtopic.php?f=1&t=35917

WinPython wäre eventuell auch eine Möglichkeit. WinPython ist eine Python-Distribution mit vielen wichtigen Bibliotheken inklusive (Numpy, Matplotlib, Qt, ...), die ohne Setup aus einem Verzeichnis auch von CD oder USB-Stick läuft. Da könntest Du Deinen eigen Python-Code einfach mit dazu packen.
a fool with a tool is still a fool, www.magben.de, YouTube
Kalli87
User
Beiträge: 281
Registriert: Montag 10. November 2014, 11:27

Alles schön und gut MagBen aber ich arbeite mit Linux.
Gibts denn für Linux etwas ähnliches?

Ich hab schon probiert über PYTHONPATH die Bibliotheken so einzubinden aber das klappt nicht wirklich.
Benutzeravatar
MagBen
User
Beiträge: 799
Registriert: Freitag 6. Juni 2014, 05:56
Wohnort: Bremen
Kontaktdaten:

Bei Linux ist es zwar möglich Python mit auszuliefern (Blender macht das so), das würde ich aber nicht empfehlen, besser ist es wenn Python über den Paket-Manager installiert wird.
a fool with a tool is still a fool, www.magben.de, YouTube
Kalli87
User
Beiträge: 281
Registriert: Montag 10. November 2014, 11:27

Nicht empfehlen? Aus welchen Gründen?
Ich weiß nicht an wie vielen PC´s das Programm zum Einsatz kommen soll, aber wenn das einige 100 sind kann ich mich nicht hinstellen und überall Python installieren.
Also wäre es schon gut wenn ich das ganze irgendwie "portable" hin bekommen würde.

Danke
Benutzeravatar
MagBen
User
Beiträge: 799
Registriert: Freitag 6. Juni 2014, 05:56
Wohnort: Bremen
Kontaktdaten:

Kalli87 hat geschrieben:Nicht empfehlen? Aus welchen Gründen?
Es ist nicht so einfach ein Binary für Linux anzubieten, das auf allen Linux Varianten läuft. Blender hat das hingekriegt. Dazu kompiliert Blender aber auch Python und alles was dazu gehört selbst.

Der andere Weg ist, selbst ein Paket zu erstellen und in dieses Paket die Abhängigkeiten einzutragen. Wenn dann jemand Dein Programm-Paket mit Hilfe des Paket-Managers installiert, dann installiert der Paket-Manager Python und alles weitere gleich mit. Hierzu braucht der Benutzer allerdings Admin-Rechte.
Kalli87 hat geschrieben:aber wenn das einige 100 sind
Firmeninterne Anwenung? Dann würde ich das sowieso nur über die Admins installieren lassen und nicht vom Benutzer.
a fool with a tool is still a fool, www.magben.de, YouTube
Kalli87
User
Beiträge: 281
Registriert: Montag 10. November 2014, 11:27

Nein keine Anwendungen, das is ein Programm was vllt an 100 PC´s zum Einsatz kommt bzw. kommen könnte.
Auf den PC´s, soweit ich weiß, ist kein Python installiert aber das Programm soll trotzdem auf laufen und das ganze ohne die Installation von Python.
Ist quasi ein Muss-Kriterium. Deswegen frag ich ja hier nach ob das überhaupt umsetzbar ist, was ich ehrlich gesagt hoffe.
Sirius3
User
Beiträge: 17766
Registriert: Sonntag 21. Oktober 2012, 17:20

@Kalli87: ich weiß jetzt nicht auswendig, ob Du Python2 oder 3 programmierst, aber Python 2 sollte auf jedem einigermaßen modernen Linux (also jünger als 10 Jahre) installiert sein. Und Du kannst gerne Dein Programm nochmal zur Begutachtung hier reinstellen. Wir finden bestimmt noch etwas zu verbessern :P.
Kalli87
User
Beiträge: 281
Registriert: Montag 10. November 2014, 11:27

@Sirius3: Auf Spekulationen oder hoffen das es so is das Python installiert kann ich nicht und das geht auch nicht.
Habs in Python3 geschrieben und nein ich zeig den Code nicht :P

Kann mir einer deswegen weiterhelfen oder is das ganze Aussichtslos was mein Chef sich so vorgestellt hat?
BlackJack

@Kalli87: Dein Programm kann auf 100 Rechnern installiert werden, aber Python nicht? Einzig Python 3 kann problematisch sein, weil man sich da auf eine Version beschränken müsste die auf allen Zielsystemen über die Paketverwaltung installierbar ist, bzw. auf den kleinsten gemeinsamen Nenner. Einer der Gründe warum ich Python 2.7 bevorzuge — das gibt's wirklich fast überall. :-)
Kalli87
User
Beiträge: 281
Registriert: Montag 10. November 2014, 11:27

Python darf nicht installiert werden das nur zur Info!

Gut dann mal anders.
Ich hab ein Shell-Script was mein Programm ausführt, kann ich irgendwie in diesem Script auch Ordnerpfade von Python angeben?
Oder besser gesagt ich hab einen Ordner wo alle Dateien von meinem Programm, Shell-Script, Python-Bibliotheken, Python-Module eigentlich alles was man braucht da drinnen liegen.
(Python ist nicht installiert!)
In dem Shell-Script hatte ich mit "export path" probiert den Python-Pfad einzubinden, leider ohne Erfolg.

Kann mir da einer weiterhelfen?
Kalli87
User
Beiträge: 281
Registriert: Montag 10. November 2014, 11:27

Guten Morgen,
ich probiere nochmal mein Glück bei euch vllt kennt einer eine Lösung.

Vorab hätte ich aber gerne gewusst ob es überhaupt möglich ist ein Programm was in Python geschrieben wurde zu starten wenn auf dem PC kein Python installiert wurde.
Beziehungsweise ob es zwingend erforderlich is das man Python installiert um etwas überhaupt damit anfangen zu können.
Ich frage deshalb weil man in Windows eine Portable Version von Python vom USB-Stick betreiben kann, wie ich es auch tue aber wie sieht es unter Linux aus? Gibt es da eine Variante die man ebenso unter Linux verwenden kann?

Danke
Sirius3
User
Beiträge: 17766
Registriert: Sonntag 21. Oktober 2012, 17:20

@Kalli87: möglich ist vieles. Wenn Du Dich auf eine einheitliche Linux-Installation beschränkst, sogar ziemlich einfach. Aber nochmal, es ist ziemlich kompliziert, eine Linux-Distribution hinzubekommen, die kein Python braucht. Also zu 99% ist da ein Python installiert.
Kalli87
User
Beiträge: 281
Registriert: Montag 10. November 2014, 11:27

@Sirius3: Ich kann leider nicht von einer einheitlichen Linux-Installation ausgehen und auch nicht ob Python installiert ist.
Aus deinem Post kann ich entnehmen das Python zwingend erforderlich ist, liege ich da richtig mit meiner Annahme?
Kalli87
User
Beiträge: 281
Registriert: Montag 10. November 2014, 11:27

Liege ich nun richtig?
Sorry das ich nerve aber eine Antwort wäre da echt toll.

Danke
Sirius3
User
Beiträge: 17766
Registriert: Sonntag 21. Oktober 2012, 17:20

@Kalli87: ich kenne Deine Konfiguration nicht, aber jedem Linux-Admin kann man sagen, installiere bitte dieses Programm, das hat folgende Abhängigkeiten: Python, ...
Kalli87
User
Beiträge: 281
Registriert: Montag 10. November 2014, 11:27

@Siruis3: Wenn ich die ganze Konfiguration von allen Pc´s wüsste könnte ich Sie dir auch sagen.
Bei mir läuft OpenSuse mit der aktuellsten Version, hab Python 3.4 drauf und hab damit das Programm geschrieben bzw die Oberfläche für das Shell-Script.

Die "Admins" sitzen hier in der Firma wo ich mein Praktikum habe und diese sagen "Nein" zu der Installation. Ich hab das ganze mit meinem Chef besprochen und hab gesagt das es ohne Installation einfach nicht möglich ist. Jetzt wirds einfach zu irgendeinem PC geschickt das Programm und dann mal gucken ob es läuft. ich glaub es zwar nicht da Python3.4 mit älteren nicht Versionen kompatibel ist aber egal.

Ps. Es is nicht böse gemeint aber warum nicht einfach klipp und klar schreiben: "Wenn du ein in Python geschriebenes Programm starten willst, muss Python installiert sein" ? Das hätte mir gereicht und ich hätte nicht so ewig im Internet gestöbert in der Hoffnung eine Lösung zu finden.

Danke
Sirius3
User
Beiträge: 17766
Registriert: Sonntag 21. Oktober 2012, 17:20

@Kalli87: das wurde Dir so schon im ersten Post geschrieben: "installiere Python3 über den Paket-Manager". Wenn Dein Chef sagt, programmier das in Python3 und die Admins sagen, nein, wir installieren kein Python3, dann sollen das Dein Chef und Dein Admin miteinander ausmachen, nicht Du. Weniger Probleme machts, wenn Du das Programm Python2-kompatibel machst, das sollte mit ein Paar __future__-Imports und six kein Problem sein.
Kalli87
User
Beiträge: 281
Registriert: Montag 10. November 2014, 11:27

So durfte jetzt alles auf Python2 umschreiben aber funzt trotzdem nicht da auf dem jeweiligem pc kein tkinter-Modul installiert ist. :D
Naja so hab ich bissl was zu tun was das umschreiben und raus suchen der rpm betrifft.
Sirius3
User
Beiträge: 17766
Registriert: Sonntag 21. Oktober 2012, 17:20

@Kalli87: Python ohne tkinter? Das wäre dann wieder irgendetwas selbst-kompiliertes. Du kannst ja auf eine Text-UI umsteigen :P
Antworten