Установка M2Crypto на CentOS - PullRequest
       5

Установка M2Crypto на CentOS

10 голосов
/ 07 декабря 2010

Я пытаюсь установить M2Crypto на CentOS путем компиляции из исходного кода.я делаю сборку Python setup.py, но я получаю следующую ошибку,

/usr/local/lib/python2.6/distutils/dist.py:266: UserWarning: Unknown distribution option: 'test_suite'
  warnings.warn(msg)
running build
running build_py
running build_ext
building 'M2Crypto.__m2crypto' extension
swigging SWIG/_m2crypto.i to SWIG/_m2crypto_wrap.c
swig -python -I/usr/local/include/python2.6 -I/usr/include -includeall -o SWIG/_m2crypto_wrap.c SWIG/_m2crypto.i
SWIG/_m2crypto.i:28: Error: Unable to find 'openssl/opensslv.h'
SWIG/_evp.i:9: Error: Unable to find 'openssl/opensslconf.h'
SWIG/_ec.i:7: Error: Unable to find 'openssl/opensslconf.h'
error: command 'swig' failed with exit status 1

Пожалуйста, сообщите ...

Прасанна

Ответы [ 5 ]

10 голосов
/ 07 декабря 2010

Должно работать следующее:

env SWIG_FEATURES="-cpperraswarn -includeall -D__`uname -m`__ -I/usr/include/openssl" python setup.py build

Редактировать: и openssl-devel пакет, конечно, также требуется.

7 голосов
/ 27 сентября 2011

У меня просто была эта проблема. В файле INSTALL M2Crypto:

Note about Fedora Core -based Distributions
----------------------------------------------------

Fedora Core (and RedHat, CentOS etc.) have made changes to OpenSSL
configuration compared to many other Linux distributions. If you can not
build M2Crypto normally, try the fedora_setup.sh script included with
M2Crypto sources.

Мое решение состояло в том, чтобы получить источники из PyPI или из источника . Затем в каталоге M2Crypto:

$ chmod +x fedora_setup.py
$ ./fedora_setup.py install

Если вы используете virtualenv, измените путь к интерпретатору python в этом файле или активируйте свою среду перед сборкой.

Единственная моя зависимость, которая не была удовлетворена в моей системе, была openssl-devel.

3 голосов
/ 07 декабря 2010

Установить openssl-devel.

0 голосов
/ 14 марта 2018

У меня была эта проблема сейчас (в 2018 году), я решил ее путем установки openssl-devel, gcc и make

yum install gcc gcc-c++ make openssl-devel

0 голосов
/ 26 мая 2013

Следуйте инструкциям Брайана и убедитесь, что у вас установлена ​​openssl-devel. если вы испытываете ошибку, подобную этой:

./fedora_setup.sh build
running build
running build_py
running build_ext
building 'M2Crypto.__m2crypto' extension
swigging SWIG/_m2crypto.i to SWIG/_m2crypto_wrap.c
swig -python -I/usr/include/python2.6 -I/usr/include -includeall -o SWIG/_m2crypto_wrap.c SWIG/_m2crypto.i
SWIG/_evp.i:12: Error: Unable to find 'openssl/opensslconf-i686.h'
SWIG/_ec.i:7: Error: Unable to find 'openssl/opensslconf-i686.h'
error: command 'swig' failed with exit status 1

Вы используете операционную систему i386 на 64-битном оборудовании. arch =´uname -m´ даст урожай i686. Самый простой способ - это создать символическую ссылку.

sudo ln -s /usr/include/openssl/opensslconf-i386.h /usr/include/openssl/opensslconf-i686.h

Или если у вас возникли ошибки типа:

./fedora_setup.sh build
running build
running build_py
running build_ext
SWIG/_m2crypto_wrap.c:27555: error: ‘Swig_var__evp_err_set’ undeclared (first use in this function)
SWIG/_m2crypto_wrap.c:27564: error: ‘Swig_var__dh_err_get’ undeclared (first use in this function)
SWIG/_m2crypto_wrap.c:27564: error: ‘Swig_var__dh_err_set’ undeclared (first use in this function)
SWIG/_m2crypto_wrap.c:27576: error: ‘Swig_var__rsa_err_get’ undeclared (first use in this function)
...

Некоторые заголовки отсутствуют, просто введите следующую команду и повторите попытку:

sudo yum install python-devel
...