Не удается установить пакет 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
>>>
Что я делаю неправильно?
Ответы
Ответ 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.