So finden Sie PYTHONPATH auf Redhat?
Auf Redhat, python 2.4.3 installiert ist. Auf dieser Maschine, wir haben eine Anwendung, verwendet python 2.6 (seltsam, zumindest für mich).
Verstehe ich es so:
Ich starten Sie eine Befehlszeile, die von RedHat-desktop und geben Sie "python", heißt es:
Python 2.4.3 (#1, Dec 11 2006, 11:39:03)
Innerhalb der Anwendung, die ich oben erwähnt habe, kann ich starten Sie ein xterm, und wenn ich den Typ "python", es sagt:
Python 2.6.5 (r265:79063, Sep 27 2010, 19:19:43)
Nun, PYTHONPATH von RedHat und PYTHONPATH dieser Anwendung ist anders als alle anderen.
Möchte ich hinzufügen, dass ein neues Verzeichnis für die PYTHONPATH dieser Anwendung. Wie kann ich herausfinden, wo seine PYTHONPATH definiert ist? Und wie füge ich ein neues Verzeichnis für diese Anwendung PYTHONPATH?
- Hast du mehrere version von python in bin-Verzeichnissen. Normalerweise müssen Sie python und python2.x .
- Ich werde installieren Sie numpy und matplotlib-Pakete. Und Skripte zu schreiben über diese 2 Pakete für diese Anwendung. Ich habe keine root-Rechte. Ich glaube, ich habe 2 Optionen: 1-installieren Sie diese Pakete, um
~/.local
oder 2-kopieren Sie diese Bibliotheken zu einem der Verzeichnisse, die in Anwendungen' PYTHONPATH. Meine wichtigste Frage ist: muss ich ausführen setup.py installieren Sie numpy und matplotlib? Warum nicht einfach kopieren Sie die Module in diesen packages zu einem der Verzeichnisse, die in PYTHONPATH der Anwendung? - Nicht tun 2. Aktualisieren Sie einfach Ihren PYTHONPATH. Und man kann nicht einfach kopieren Sie die Module, einige C-und Fortran-Bibliotheken kompiliert werden während des build-Prozesses.
- OK, jetzt ist es klarer.
- Ich habe numpy installiert, um ~/.lokale mit python 2.4.3. Dann begann ich mit der Anwendung python und tippte
sys.path.append("/home/myuser/.local/lib64/python2.4/site-packages")
Wenn ich versucheimport numpy
es sagte:ImportError: /home/myuser/.local/lib64/python2.4/site-packages/numpy/core/multia rray.so: undefined symbol: Py_InitModule4
Du musst angemeldet sein, um einen Kommentar abzugeben.
könnte die Anwendung ausgeführt werden, in einigen virtuellen python-Umgebung.
Sollten Sie den Fokus Ihrer Forschung versuchen heraus zu finden, was python wird verwendet, wenn Sie ausführen, python. Sie können es tun, mit der die comamand.
Beide Werte werden definitiv anders.
Nun, bevor ein neuer Pfad zu der app PYTHONPATH, die Sie stellen sollten, bevor Sie, warum Sie es brauchen. Wenn Sie nur ein python-Modul, könnte es besser sein, installieren Sie es einfach von pip.
Wenn Sie noch brauchen, es zu tun Sie können es tun mit der python-Website. Haben Sie schauen auf Ihre Antwort. http://docs.python.org/library/site.html
Es gibt keinen Weg, um herauszufinden, wo die
PYTHONPATH
definiert ist, weil es wahrscheinlich definiert an mehreren stellen (es könnte sein, definiert oder modifiziert in das Skript, das ausgeführt wird, wenn Ihre shell gestartet wird). Wenn Sie möchten, dass ein Verzeichnis hinzufügen, um den Pfad, in Ihrem Skript können Sie anfügen eine Zeichenfolge, die das Verzeichnis zusys.path
./usr/local/bin
Sie schreiben würdensys.path.append('/usr/local/bin')
.