我使用Python2.7.10并安装了M2Crypto。
像这样导入库:
from M2Crypto import RSA但是,在运行python脚本时,我会得到以下错误:
ImportError: dlopen(/Users/shuma/Desktop/Projects/adastocks/vir_test/vir_test/lib/python2.7/site-packages/M2Crypto/_m2crypto.so, 2): Symbol not found: _ASN1_TIME_set_string
Referenced from: /Users/shuma/Desktop/Projects/adastocks/vir_test/vir_test/lib/python2.7/site-packages/M2Crypto/_m2crypto.so
Expected in: flat namespace我正在使用MacOSX 10.11.5,我试着用brew安装。但我还是会犯同样的错误。
发布于 2017-04-21 14:31:39
溶液
这似乎适用于最新的m2crypto 0.22.5。我还用m2crypto 0.22.3对它进行了一次测试,而且似乎也很有效。这里的OpenSSL版本是1.0.2d:
最后在我的Bash中在El Capitan上安装m2crypto。这是一个很长的命令,但它只在pip安装期间才会更改SWIG和clang环境变量,以便m2crypto将获得所有OpenSSL需求,而且由于我使用的是虚拟python环境,所以必须清除dir缓存。
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 --no-cache-dirhttps://stackoverflow.com/questions/43538369
复制相似问题