ubuntuusers.de

Programm Wikidpad: Python-Quelltext kompilieren für Dummies

Status: Ungelöst | Ubuntu-Version: Nicht spezifiziert
Antworten |

L-Grande

Anmeldungsdatum:
11. August 2014

Beiträge: 219

Hallo! Ist noch nicht so lange her, dass ich von Windows auf Linux übersiedelt bin, und jetzt möchte ich mich wieder mal einen weiteren Schritt auf Neuland vorwagen:

Bin Vielnutzer eines Programmes namens Wikidpad. Bislang habe ich das auf Linux per Wine-Version benutzt, weil das ganz am Anfang für mich noch am leichtesten machbar war.

Vor ein paar Wochen bin ich nun einen weiteren Schritt in die richtige Richtung gegangen: habe mir den Quelltext des Programms runtergeladen, ihn mit Python zum Laufen gebracht, und ihn mit dem ihm zugehörigen MIME-Typ verknüpft. Für jemanden, der ganz in Linux zuhause ist, ist das was Triviales, aber für mich war das neu und ich habe viel dabei gelernt.

Jetzt gibt es aber das Problem, dass diese Installation zwar fehlerfrei funktioniert, aber viel langsamer ist als die (nicht ganz sauber funktionierende) Wine-Installation. Der Quelltext wurde hier nämlich nicht kompiliert, sondern wird nur von Python in Echtzeit interpretiert. Bei Seiten mit sehr viel Text ist das gar nicht mehr lustig.

Da dachte ich mir: es wird doch sicher möglich sein, auch Python-Quelltext zu kompilieren; aber ich fand nirgendwo Anweisungen bzw. Handreichungen à la "Python-Kompilation für Dummies". Mein Problem ist: Wie verwandle ich Python-Quelltext in ein installierbares Debian-Programmpaket, mit welchen Tools gehe ich in welcher Reihenfolge vor?

Kennt Ihr da irgendwas, an dem ich mich orientieren kann, ohne dass ich mich lange in Grundlagen einlesen muss? Denn dazu fehlt mir im Augenblick akut die Zeit. Vielleicht eine Anleitung, die sich auf ein anderes Programm bezieht und die ich dann 1 zu 1 auf Wikidpad übertragen kann? Ich bin bereit, damit verbundene Risiken einzugehen ...

Vielen Dank schon mal!

ChickenLipsRfun2eat Team-Icon

Anmeldungsdatum:
6. Dezember 2009

Beiträge: 12067

Hallo!

Ich verwende Python nur für kleinere Scripte, daher habe ich leider keine praktischen Erfahrungen mit dem, was du benötigst. Aber ich kann dir pycompile als Anhaltspunkt dalassen.

fk

Anmeldungsdatum:
25. Februar 2010

Beiträge: 9

Python wird immer* interpretiert, wenn das also langsam ist, hat das andere Gründe, nicht irgendein magischer Kompilierschritt, der fehlt. Ein Debian-Paket wird daran auch nichts ändern, sondern nur die Installation einfacher machen.

Du könntest dir stdeb angucken, vl. kriegst du damit ein Paket hin. Ansonsten kann ich dir aber nur raten, dich etwas mit dem Debian-Paketbauprozess zu befassen. Ich kann dir zumindest versichern, dass ein Nur-Python-Programm so ziemlich der einfachste Einstieg ist (Stichwort Pybuild) 😛

* Gut, nicht "immer", aber die Ausnahmen sind hier irrelevant.

Acer54

Avatar von Acer54

Anmeldungsdatum:
6. Juli 2011

Beiträge: 700

Wohnort: Bayern

fk schrieb:

Python wird immer* interpretiert, wenn das also langsam ist, hat das andere Gründe, nicht irgendein magischer Kompilierschritt, der fehlt....

+ 1

Ein DEB wird das Programm nicht beschleunigen.... Python übersetzt beim Aufruf/Abarbeitung eines Scripts erst mal die Module und Libs in einen "byte-Code" (Datei-Endung *.pyc) welche dann in der Virtuellen Maschine von python ausgeführt werden (was man als "kompiliert" bezeichnen könnte...). Dies passiert allerdings immer (wenn sich der Timestamp der *.py geändert hat (?)). Allerdings passiert das auch bei einer "One-Directory" oder einer "One-File" Installation eines Programmes. Ganz im Gegenteil müssten diese Installationsarten sogar langsamer sein, als das reine Ausführen eines Scripts mit dem Interpreter ala "python script.py".

Kann es sein, dass du auf bestimmte "resourcen" z.B. die Wiki-Datenbank per Netzwerk zugreifst welches ausbremst?

Ansonsten könnte ich mir nur noch vorstellen, dass resourcen wie von einem Framework verwendet werden, vielleicht in einem Format vorliegen, welches erst an das jeweilige Framework angepasst werden muss (z.B. JPEGs, PNGs usw. welche erst in eine resources-Datei gepackt werden müssen, wenn z.B. das Framework PyQt(4?) ist). Dies ist allerdings nur alles Spekulation da ich mir den Code nicht angesehen habe.

Antworten |