Подтвердить что ты не робот

Не удается установить пакет Python

Я очень новичок в CentOS, и я пытаюсь установить на него пакет M2Crypto Python.

Я побежал:

sudo python setup.py install

И он, похоже, прошел нормально: (это конец вывода)

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

Однако я не могу импортировать M2Crypto:

$ 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
>>> 

Что я делаю неправильно?

4b9b3361

Ответ 1

Я побежал:

python setup.py tests

и это зафиксировало это. Он скопировал некоторые файлы, которые, я думаю, привели к тому, что lib был помещен в нужное место.

running test
running egg_info
writing M2Crypto.egg-info/PKG-INFO
writing top-level names to M2Crypto.egg-info/top_level.txt
writing dependency_links to M2Crypto.egg-info/dependency_links.txt
reading manifest file 'M2Crypto.egg-info/SOURCES.txt'
writing manifest file 'M2Crypto.egg-info/SOURCES.txt'
running build_ext
copying build/lib.linux-i686-2.4/M2Crypto/__m2crypto.so -> M2Crypto
test_BitSTring (tests.test_asn1.ASN1TestCase) ... ok
.
.
.

Ответ 2

tests не является допустимой целью, запустите test; это устранило проблему для меня.

Ответ 3

Я просто столкнулся с той же проблемой, на centos 6.2.

Запуск теста также исправил его для меня. Однако, когда я смотрел пакеты сайтов, ничего не менялось. Запуск теста setup.py строит m2crpyto в локальном каталоге.

Чтобы ключ к проблеме, чтобы исправить проблему без запуска теста setup.py, оставьте папку M2Crypto. Он собирает m2crypto из локальной папки и не находит яйцо.

Ответ 4

Это случается со мной иногда при установке модулей python. Есть несколько вещей, которые я делаю для решения этой проблемы:

  • Иногда это потому, что вы никогда не устанавливаете свой PYTHONPATH. Попробуйте:

    setenv PYTHONPATH /usr/lib/python 2.4/site-packages:$PYTHONPATH

  • Иногда это из-за общих библиотек, найденных в /usr/lib, и вам придется выполнять:

setenv LD_LIBRARY_PATH /USR/ Библиотека: $LD_LIBRARY_PATH

Дайте мне знать, как это происходит для вас. В большинстве случаев это просто потому, что вы не правильно установили путь python.