私はCentOSの新機能で、M2Crypto Pythonパッケージをインストールしようとしています。Pythonパッケージをインストールできない
は私が走った:
sudo python setup.py install
そして、それはOKに行くように見えた:M2Crypto
removing 'build/bdist.linux-i686/egg' (and everything under it)
Processing M2Crypto-0.20.2-py2.4-linux-i686.egg
Removing /usr/lib/python2.4/site-packages/M2Crypto-0.20.2-py2.4-linux-i686.egg
Copying M2Crypto-0.20.2-py2.4-linux-i686.egg to /usr/lib/python2.4/site-packages
M2Crypto 0.20.2 is already the active version in easy-install.pth
Installed /usr/lib/python2.4/site-packages/M2Crypto-0.20.2-py2.4-linux-i686.egg
Processing dependencies for M2Crypto==0.20.2
しかし、私はインポートできません(これは出力の最後です):
$ python
Python 2.4.3 (#1, Nov 11 2010, 13:34:43)
[GCC 4.1.2 20080704 (Red Hat 4.1.2-48)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import M2Crypto
Traceback (most recent call last):
File "<stdin>", line 1, in ?
File "M2Crypto/__init__.py", line 22, in ?
import __m2crypto
ImportError: No module named __m2crypto
>>>
私は何が間違っていますか?
あなたは何か間違っているようには見えません。 Ubuntuにaptを付けてパッケージをインストールし、Python 2.6に問題はありません。 (なぜあなたはPythonのv2.4を使用していますか?)モジュールは/usr/lib/pymodules/python2.6/M2Cryptoから読み込まれています。ここには__m2crypto.soファイルがあります。/usr/share/pyshared/M2CryptoにM2Cryptoの別のコピーがあり、そこには.soファイルがありません。 – Apalala
フィードバックApalalaに感謝します。私はPython 2.4を実行しています。なぜなら、これはCentOSのデフォルトであり、多くのCentOSツールはPython 2.4が私が読んだものから期待しています。M2Cryptoのドキュメントでは、2.4で動作すると言われています。 – VacuumTube
新しいバージョンのPythonを(デフォルトでは/ usr/local/bin /に)インストールして、あなたのスクリプトがそのパスでPythonを参照するようにすることができます。そうすれば、システムPythonと開発/配備Pythonのモジュールディレクトリを別々に持つことができます。あなたのpythonソースを設定するときには--prefix =/usr/local /を設定するだけです(デフォルトでは行いますが、あなたが望むものを作ることができます)。 – synthesizerpatel