m2crypto:python 2.7 兼容性与使用哪个版本的 OpenSSL?

2 投票
1 回答
2161 浏览
提问于 2025-04-16 04:59

我们一直在Windows(32位)上使用M2crypto和Python 2.6,效果很好。我们用一个用户提供的安装包在开发环境中安装了M2crypto。现在我们想升级到Python 2.7,但发现没有为Python 2.7预先构建的M2crypto安装包。

问题:

  1. M2crypto 0.20.2能和Python 2.7兼容吗?如果想继续使用这个库,我们是不是应该停留在Python 2.6上?

  2. 有没有人能提供一个用户自建的安装包,用于在Python 2.7环境中安装M2Crypto 0.20.2?(在M2crypto网站上没有2.7的贡献,谷歌搜索也没有结果)

  3. 我们能把Python 2.6的M2Crypto文件(在lib\site-packages\M2Crypto下)复制到Python 2.7的相同位置,避免正式安装过程吗?

  4. 我们应该使用哪个版本的OpenSSL与M2crypto 0.20.2配合?我查看了OpenSSL网站,发现有两个版本可以选择:0.9.8和1.0.0a。

谢谢,
Malcolm

1 个回答

3
  1. 是的,它和Python 2.7兼容,所以如果你还没有升级,可以放心地进行升级。
  2. 是的,这里有一些链接,里面有我为Python 2.7用MSVS2008构建的M2Crypto 20.2的文件,包括 bdist_wininstbdist_eggbdist,希望这些能满足你的需求。
  3. 不行,你会遇到导入错误,因为这个.pyd文件(其实是DLL文件)在它的导入表里有 python26.dll,所以这样是无法工作的。当然,你可以尝试修改它,把 python26 替换成 python27,但这样做不太干净,也不能保证它总是能正常工作。
  4. 我上传的版本和OpenSSL 0.9.8o配合得很好,但我还没有用1.0.0测试过。

撰写回答