Projekt sichtbar machen - site-package erstellen

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
B-Baer
User
Beiträge: 23
Registriert: Donnerstag 5. August 2010, 11:56

Hallo,
ich habe ein kleines Pythonmodul mit PyDev geschrieben.

Die Ordnerstruktur sieht in etwa wie folgt aus:

C:\XXX\MeinModul\
C:\XXX\MeinModul\icons
C:\XXX\MeinModul\sql
C:\XXX\MeinModul\src

die Python Klassen liegen in dem Ordner ...\src

Jetzt wollte ich mein Projekt als site-package veröffentlichen, damit
ich es leichter in neue Pythonprojekte importieren kann.

Ich habe es in den ...\site-packages Ordner kopiert nur leider funktioniert der import nicht.

Hat jemand vielleicht ne Idee, ggf. eine andere Lösung wie man eigene Projekte allgmein sichtbar macht?
BlackJack

@B-Baer: Schau Dir mal die distutils-Dokumentation an: Distributing Python Modules
B-Baer
User
Beiträge: 23
Registriert: Donnerstag 5. August 2010, 11:56

@BlackJack danke für den hint.

Ich möchte aber lediglich das mein Projekt in andere Pytonprojekte via import eingebunden werden kann.
Sind da "Extensions" der richtige Weg, ich versuche gerade noch aus den Distributions das richtige für mich rauszusuchen...
Benutzeravatar
cofi
Python-Forum Veteran
Beiträge: 4432
Registriert: Sonntag 30. März 2008, 04:16
Wohnort: RGFybXN0YWR0

B-Baer hat geschrieben:Sind da "Extensions" der richtige Weg, ich versuche gerade noch aus den Distributions das richtige für mich rauszusuchen...
Nein, das sind C-Module.

Schau dir mal http://docs.python.org/distutils/introd ... le-example und die ersten Abschnitte hier an: http://docs.python.org/distutils/setups ... tup-script

Edit: Solange du das nicht verteilen willst, kannst du auch einfach schaun welche Verzeichnisse in `sys.path` sind und dann deinen Quelltext dahin kopieren. Aber wenn es um groesseres geht ist davon abzuraten.
B-Baer
User
Beiträge: 23
Registriert: Donnerstag 5. August 2010, 11:56

@all super besten dank, habe das nun soweit hinbekommen das meine applikation als side-package eingetragen wird.

jedoch bekommen ich das mit den icons noch nicht so hin, wie es seien soll.

data_files = [("icons", ["../icons/myicon.ico"])]
hiermit werden die data_filies direkt in den python ordner kopiert,
jedoch nicht in die side-packages bzw. ordner meiner Applikation.

Muss ich den händisch angeben oder gibt es eine elegantere lösung?
Zudem habe ich die einbindung der Icons über ../icons/myicon.ico realisiert.
wenn ich jedoch mein package von "woanders" aufrufe, stimmt der relative pfad natürlich nicht.
hat jemand vielleicht nen lösungsansatz ?
Antworten