Python M2crypto错误
我正在尝试在一个跨平台的环境(ARM)上构建 crda
代理模块。为了完成这个任务,我需要一个输入模块,就是 m2crypto
的共享对象文件。我已经成功地进行了交叉编译,并生成了 m2crypto.so
文件。
当我输入 make
命令时,内部会调用一个 Python 脚本,这个脚本应该以 m2crypto.so
模块作为输入,并生成 openssl(RSA)密钥。
我遇到的问题是,这个 Python 脚本无法从 __m2crypto.so
文件中导入任何模块。我使用的是 Python 2.4 版本。出现的错误是:
$ make
GEN keys-ssl.c
Trusted pubkeys: /home/tools/crda/pubkeys/linville.key.pub.pem
Traceback (most recent call last):
File "./utils/key2pub.py", line 6, in ?
import m2crypto
ImportError: /usr/lib/python2.4/lib-dynload/m2crypto.so: cannot open shared object file: No such file or directory
make: *** [keys-ssl.c] Error 1
而当我在主机机器(x86 平台)上编译 m2crypto
并尝试为同样的环境构建 crda
时,Python 能够成功导入 m2crypto.so
文件。
有没有什么建议可以帮助我在不同的平台(ARM)上成功构建呢?
提前感谢,
Rams ch
1 个回答
0
这个问题已经有一段时间了 ;-)
最近几天我也遇到了同样的问题。也许解决我问题的方法对看到这个问题的其他人也有帮助。我当时使用了一个来自openwrt的补丁:
101-make_crypto_use_optional.patch
这个补丁去掉了crda中的加密设置。对我来说,这样做是可以的……