Seite 1 von 1

pyd erstellen

Verfasst: Samstag 22. September 2012, 09:39
von mayx
Hey,

ich hab ein kleines Framework geschrieben, nun
würde ich dies gerne als pyd zu verfügung stellen.
Im Wiki und im Forum habe ich aber nix gefunden.

Vielen Dank für Tipps / Links und Lösungen. ;)

Re: pyd erstellen

Verfasst: Samstag 22. September 2012, 11:16
von mutetella
Hallo,

hast Du hier schon mal geschaut?

mutetella

Re: pyd erstellen

Verfasst: Samstag 22. September 2012, 11:22
von mayx
Cool. Schau ich mir gleich mal an.

Re: pyd erstellen

Verfasst: Samstag 22. September 2012, 11:58
von mayx
Rauskommen soll eine "xyz.pyd" Datei, die per import in neue Projekte eingefügt werden kann.

Hier is ein Beschreibung: http://www.ehow.com/how_12213698_edit-pyd-files.html
,hier noch n längere Beschreibung: http://www.ehow.com/facts_5620274_file- ... -pyd_.html
und hier wie es gehen soll: http://www.ehow.com/how_10051925_make-pyd-file.html

Re: pyd erstellen

Verfasst: Samstag 22. September 2012, 13:38
von BlackJack
@mayx: Wie man Python-Erweiterungen in C schreibt, wird in der Python-Dokumentation erklärt.

Re: pyd erstellen

Verfasst: Samstag 22. September 2012, 14:51
von mayx

Re: pyd erstellen

Verfasst: Samstag 22. September 2012, 15:31
von mayx
Zum Verständnis; Pyd-dateien werden mit C-Compilern erstellt
und können nicht direkt aus Python-Code generiert werden.
Wenn ich nun fertigen Python-Code habe, müsste ich diesen erst
in C importieren und dann über C eine pyd erstellen?

Re: pyd erstellen

Verfasst: Samstag 22. September 2012, 16:02
von BlackJack
@mayx: Fertigen Python-Code importierst Du einfach direkt. Vielleicht erklärst Du mal was Du Dir von einer *.pyd-Datei überhaupt versprichst.

Re: pyd erstellen

Verfasst: Samstag 22. September 2012, 16:05
von mayx
Na damit man den Inhalt nicht verändert bzw. sieht.

Re: pyd erstellen

Verfasst: Samstag 22. September 2012, 16:09
von webspider
Das ist ein denkbar schlechter Schutz der es den Aufwand nicht wert ist.

Re: pyd erstellen

Verfasst: Samstag 22. September 2012, 16:17
von mayx
Wenn ich aus einer größeren Anzahl von .py-Dateien eine pyd-Datei
erstellen kann, die dann direkt in Python nutzbar ist, aber halt
nicht mit Textpad oder so lesbar ist, würde mir das reichen.

Re: pyd erstellen

Verfasst: Samstag 22. September 2012, 16:26
von webspider
In Python werden üblicherweise weniger einzelne Dateien als bei Java verwendet; aus einem einzelnen Modul bestehende Projekte sind daher nicht unüblich. Ansonsten erstellt man Pakete, die mittels distribute und dergleichen installiert werden können.

Bleibt noch der Punkt mit dem verschleierten Code. Ich habe bisher keinen Grund dafür hier aufgeschrieben gesehen. Die Schutzmaßnahmen von Python sind unzureichend für sowas. Auch in anderen Programmiersprachen sind die ausführbaren Dateien analysierbar. Einzige wirkliche Lösung wäre es wohl das Programm über einen Webservice anzubieten (der Ausdruck dafür dürfte wohl SaaS sein), aber ich bezweifle, dass du dir den Aufwand antust.

Re: pyd erstellen

Verfasst: Samstag 22. September 2012, 16:42
von mayx
Bestehen Pakete aus einer Datei und sind nicht direkt im Editor wie Textpad lesbar?

Re: pyd erstellen

Verfasst: Samstag 22. September 2012, 17:28
von cofi
Wenn es dir nur darum geht, dass der Quellcode nur mit zusaetzlichem Aufwand lesbar ist, dann liefere den Bytecode aus: Die .pyc Dateien. Allerdings brauchst du hier zumindest fuer jede Python Major-Version ein Set von Bytecode-Dateien.

Damit du nur eine Datei hast, koenntest du zip Dateien ausliefern, mit denen kann Python (seit 2.5?) direkt umgehen.

Re: pyd erstellen

Verfasst: Samstag 22. September 2012, 17:36
von mayx
Ah, coole Idee. Das mit Zip hört sich schon mal gut an.

Nur da ich n pyd bekommen habe und das etwas hin zu
gebaut habe, würde ich natürlich auch gern wieder
eine pyd zurück schicken.

Hier sind Infos zum webspider distribute:
http://openbook.galileocomputing.de/pyt ... 22_001.htm

Re: pyd erstellen

Verfasst: Samstag 22. September 2012, 18:59
von Sr4l
Zeig doch mal bitte was du bekommen hast und bzw wie du daran was verändert hast.

PYD ist eine von Python aus aufrufbare C DLL. Das Ergebniss ist also Maschinencode.

Re: pyd erstellen

Verfasst: Samstag 22. September 2012, 19:09
von mayx
Nun ich hab die *.pyd in python importiert und einige Funktionen kombiniert, damit diese automatisch ablaufen.
Ich hatte gehoft, dass ich wieder eine pyd compilieren könnte. Ich wußte anfangs noch nicht das es hierbei um
C handelt bzw. eine Erweiterung von python.

Re: pyd erstellen

Verfasst: Donnerstag 11. Oktober 2012, 21:17
von mayx
Das ganze geht super mit Cython.
- Downloaden
- zu Python hinzufügen (setup.py install)
- py Dastei in pyx umbenennen
- setup-datei erstellen
- "python setup.py build_ext --inplace" oder "python setup.py build_ext --compiler=mingw32 --inplace" ausführen

http://docs.cython.org/src/userguide/tutorial.html

Python(x,y) hat zum Beispiel Cython integriert, falls das hinzufügen von Cython schwierigkeiten macht.
Hierbei beim Installieren Cython auswählen.