2012-03-26 8 views
0

Also muss ich einige Python-Skripte auf einem Cluster mit Maschinen ausführen, für die ich keine Administratorrechte habe. Da numpy fehlte, habe ich auf einigen Rechnern eine virtuelle Umgebung erstellt und dort numpy installiert. Ich stellte eine Verbindung zu einer Maschine her, von der ich wusste, dass sie keinen Python hat, und startete den virtualenv-Python-Interpreter durch ~my_env/bin/python, um nach import numpy zu suchen.Wie sagt man Pythons numpy wo liblapack.so.3 zu finden?

habe ich diesen Fehler:

# Some trace... 
ImportError: liblapack.so.3: File was not found # or something similar. 

Also habe ich einige der Forschung über das Internet und jemand kam mit LD_LIBRARY_PATH auf. Also füge ich

LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/me/lib; export LD_LIBRARY_PATH 

zu meinem .bashrc hinzu und bezog es. Und ich setze liblapack.so.3 in /home/me/lib;. Jetzt, wenn ich versuche zu importieren numpy erhalte ich die Fehlermeldung:

ImportError: liblapack.so.3: wrong ELF class: ELFCLASS32 

Jetzt stecken ich bin. Irgendwelche Ideen, was schief gehen könnte?

Auf den Cluster-Computern ist Suse installiert.

Antwort

5

Der Fehler bedeutet, dass das Format der C-Bibliothek von dem Binärformat von Python selbst abweicht. Die übliche Ursache für diesen speziellen Fehler ist ein 64-Bit-Python, aber eine C-Bibliothek, die 32-Bit ist. Sie müssen Python und die C-Bibliothek auf die gleiche Weise kompiliert haben.

Verwandte Themen