2012-12-19 9 views
8

Ich habe ein reines Python-Modul, das für Python 2.6 und 2.7 funktioniert. Anstatt das Modul in die Python-spezifischen Pfade zu setzen, ist es möglich, die Bibliothek an einem Ort zu platzieren, auf den sowohl Python 2.6 als auch 2.7 zugreifen können? System ist Ubuntu.Wo sollte Version unabhängige Python-Bibliothek gehen?

+0

Entwickeln Sie das Modul oder möchten Sie es nur installieren? –

+0

Ich bin der Autor des Moduls. Jetzt frage ich mich, wie ich es auf neuen Maschinen bereitstellen kann, so dass ich mich nicht darum kümmern muss, den richtigen Python-Pfad anzugeben (basierend auf der Standard-Python-Version). –

+0

Wenn Sie ['distutils'] (http://docs.python.org/2/distutils/index.html) auf die normale Weise verwenden, müssen Sie sich keine Gedanken darüber machen, wohin die Dateien gehen müssen. (Obwohl die Benutzer Ihr Modul für jede Python-Version separat installieren müssen) –

Antwort

1

standardmäßig python26 sucht nach Modulen in /python2.6/ Ordner, während python27 in /python2.7/ Ordner aussieht.

Ein Weg, um Ihr Ziel zu erreichen, wäre zu Systempfad einen anderen (gemeinsamen) Standort hinzuzufügen, durch PYTHONPATH Systemvariablen ändern:

export PYTHONPATH=/common/location 
+0

Ich hatte gehofft PYTHONPATH nicht zu berühren ... –

3

Sie die Bibliothek in einem Ort wie /opt installieren und dann zwei erstellen weiche Links innerhalb /usr/lib/python2.6 und /usr/lib/python2.7 zeigt auf diese Bibliothek.

+0

Die Symlinks machen sehr viel Sinn, aber ich fragte mich nur, ob ich es vermeiden konnte, den Python zu berühren versionsspezifische Pfade (auch wenn es nur um einen Symlink zu erstellen). –

Verwandte Themen