2009-08-11 1 views
1
Could not find platform dependent libraries <exec_prefix> 
Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>] 
Python 2.5.2 (r252:60911, Aug 8 2009, 17:18:03) 
[GCC 4.1.2 20080704 (Red Hat 4.1.2-44)] on linux2 
Type "help", "copyright", "credits" or "license" for more information. 
>>> import re 
>>> import operator 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
ImportError: No module named operator 
+0

PYTHON *環境変数が設定されていますか( "env | grep PYTHON")?その場合は、設定を解除してください。 –

+0

何も設定されていない環境をチェックしました。そのCentOS 5.3 – shahjapan

+0

sys.path( "import sys; sys.path")の値は何ですか? –

答えて

1

モジュールoperatorを発見していないプラットフォームに依存するライブラリは、おそらくあなたのケースでは/usr/local/lib/lib-dynloadには、ファイルoperator.soから来るべきと言います。だから.soファイルはそのディレクトリにありますか?

operator.soが実際にはないと仮定します(つまり、いくつかのディレクトリやファイルで誤ったパーミッションがあると思われる場合)。「戻す」ための最善の方法は、 python.orgの公式のPythonパッケージ、または公式のCentOS 5.3(もし存在すれば - 私はCentOS 5.3がPython 2.4を公式の/ usrとして使うと信じています)/bin/pythonがありますが、他に2.5を置くRPMがあるかもしれません)。

+0

はいpython2.5形式のpython.orgをインストールしようとしましたが、libthon dynloadはPython2.4でpython2.5 FILE(組み込み)用に使用されました。 – shahjapan

0

私が前にコメントで述べたことを繰り返す:reは純粋なpythonモジュールです。 /usr/local/lib/python25{,.zip}にそれを見てください。演算子はCモジュールです。 /usr/local/lib/lib-dynloadにあるはずです。そうでない場合、インストールに問題があります。はい、再インストールする必要があります。

1

私は/ usr/local/bin/pythonファイルの名前を変更しましたが、エラーはなくなりました。 私は同じディレクトリにpython2.7というファイルがあるので、これは古いバージョンのpythonと思われます。

関連する問題