update para mac descargar macos pip macos-sierra osx-elcapitan m2crypto

macos - para - uninstall python mac



Problemas para instalar m2crypto con pip en OS X/macOS (6)

pip install m2crypto

Genera el siguiente resultado:

building ''M2Crypto.__m2crypto'' extension swigging SWIG/_m2crypto.i to SWIG/_m2crypto_wrap.c swig -python -I/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -I/usr/include -I/usr/include/openssl -includeall -modern -o SWIG/_m2crypto_wrap.c SWIG/_m2crypto.i SWIG/_m2crypto.i:30: Error: Unable to find ''openssl/opensslv.h'' SWIG/_m2crypto.i:33: Error: Unable to find ''openssl/safestack.h'' SWIG/_evp.i:12: 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

He corrido:

brew install swig


Esto solucionó mi problema (Python 2.7):

export PYTHONPATH=$PYTHONPATH:/usr/local/lib/python2.7/site-packages


Gracias a las banderas de env de therealmarv logré que esto funcionara con la versión macports de openssl / swig, esto es lo que hice:

sudo port install openssl sudo port install swig sudo port install swig-python

luego use therealmarv lines pero reemplace "$ (brew --prefix openssl)" con el dir de macports que debería ser "/ opt / local"

sudo env LDFLAGS="-L/opt/local/lib" / CFLAGS="-I/opt/local/include" / SWIG_FEATURES="-cpperraswarn -includeall -I/opt/local/include" / pip install M2Crypto


Obtuve el mismo problema en Ubuntu 18.04 LTS, mientras trataba de ejecutar

pip install M2Crypto==0.24.0

Hizo lo siguiente para deshacerse de él:

sudo apt-get install swig sudo apt-get install libssl1.0-dev


Quería una forma más agradable sin instalar manualmente y usar solo Homebrew (que tampoco enlaza a openssl por defecto). También el uso de pip era un requisito. Esto parece funcionar con el más nuevo m2crypto 0.22.5. También lo probé una vez con m2crypto 0.22.3 y parece que también funciona. La versión de OpenSSL aquí es 1.0.2d:

brew install openssl brew install swig

Finalmente instale m2crypto en macOS en su Bash . Es un comando largo, pero cambia las variables de entorno SWIG y clang solo durante la pip install para que m2crypto obtenga todos los requisitos de OpenSSL:

env LDFLAGS="-L$(brew --prefix openssl)/lib" / CFLAGS="-I$(brew --prefix openssl)/include" / SWIG_FEATURES="-cpperraswarn -includeall -I$(brew --prefix openssl)/include" / pip install m2crypto

por cierto. el último comando también funciona si usa, por ejemplo, un requirements.txt.

Actualizar:
Adicional también el comando para usuarios de shell de peces ...

env LDFLAGS="-L"(brew --prefix openssl)"/lib" / CFLAGS="-I"(brew --prefix openssl)"/include" / SWIG_FEATURES="-cpperraswarn -includeall -I"(brew --prefix openssl)"/include" / pip install m2crypto


Simplemente sufrí mucho para que esto funcione en El Capitán. Esto es lo que tuve que hacer:

Instala OpenSSL (tienes que usar una versión anterior, de lo contrario, m2crypto no compilará)

curl -O https://www.openssl.org/source/openssl-0.9.8zg.tar.gz tar -xvzf openssl-0.9.8zg.tar.gz cd openssl-0.9.8zg ./Configure --prefix=/usr/local darwin64-x86_64-cc make && make test sudo make install

Instalar m2crypto

git clone https://github.com/martinpaljak/M2Crypto.git cd M2Crypto python setup.py build build_ext --openssl=/usr/local sudo python setup.py install build_ext --openssl=/usr/local

AFAIK está instalado ... Aún así tengo que hacer algunas pruebas.


sudo apt-get install python-m2crypto