sau
sau

Reputation: 1356

Can not import M2Crypro for Mac OS X 10.10.5

I was trying to install M2Crypto but sudo pip install M2Crypto was giving following error:

850 warnings and 3 errors generated.
    error: command 'cc' failed with exit status 1

    ----------------------------------------
  Rolling back uninstall of M2Crypto
Command "/usr/bin/python -c "import setuptools, tokenize;__file__='/private/tmp/pip-build-uSFYDz/M2Crypto/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-Nsz5C6-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /private/tmp/pip-build-uSFYDz/M2Crypto

Then I installed sudo pip install M2Crypto==0.21.1. It didn't give any error but when I tried to import following error is coming:

>>> import M2Crypto
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Library/Python/2.7/site-packages/M2Crypto/__init__.py", line 24, in <module>
    import ASN1
  File "/Library/Python/2.7/site-packages/M2Crypto/ASN1.py", line 12, in <module>
    import BIO
  File "/Library/Python/2.7/site-packages/M2Crypto/BIO.py", line 221, in <module>
    class CipherStream(BIO):
  File "/Library/Python/2.7/site-packages/M2Crypto/BIO.py", line 227, in CipherStream
    SALT_LEN = m2.PKCS5_SALT_LEN
AttributeError: 'module' object has no attribute 'PKCS5_SALT_LEN'

Any help appreciated!!

Upvotes: 0

Views: 559

Answers (1)

mcepl
mcepl

Reputation: 2786

INSTALL says on the installation on Macs:

Apple does not provide on more recent versions of Mac OS X (at least certainly since 10.11) any version of OpenSSL, so it is necessary to use brew or similar packaging systems to install third party packages. A Mac OS X users suggested, that this series of commands gave him a working copy of M2Crypto on his system: $ brew install openssl && brew install swig $ brew --prefix openssl /usr/local/opt/openssl $ LDFLAGS="-L$(brew --prefix openssl)/lib" CFLAGS="-I$(brew --prefix openssl)/include" \ SWIG_FEATURES="-I$(brew --prefix openssl)/include" \ pip install m2crypto

I am afraid that completely automagic pip installation doesn’t work ATM. Any merge requests finding existing installation of OpenSSL, which would be tested on Macs, would be thankfully considered.

Upvotes: 2

Related Questions