安装pyopenssl时遇到cffi.ffiplatform.VerificationError

1 投票
2 回答
4063 浏览
提问于 2025-04-18 15:44

我在使用Ubuntu 14.04系统,想在我的电脑上安装pyopenssl这个东西。不过每次安装都失败,并且显示了这些信息。我在谷歌上搜索过,但没有找到解决办法:

gcc -pthread -shared /tmp/pip_build_pi314/cryptography/cryptography/hazmat/bindings/__pycache__/cryptography/hazmat/bindings/__pycache__/_Cryptography_cffi_79a5b0a3x3a8a382.o -L/home/pi314/anaconda/lib -lcrypto -lssl -lpython2.7 -o /tmp/pip_build_pi314/cryptography/cryptography/hazmat/bindings/__pycache__/_Cryptography_cffi_79a5b0a3x3a8a382.so

Traceback (most recent call last):

File "/tmp/pip_build_pi314/cryptography/setup.py", line 88, in finalize_options

self.distribution.ext_modules = get_ext_modules()

File "/tmp/pip_build_pi314/cryptography/setup.py", line 68, in get_ext_modules

OpenSSLBinding().ffi.verifier.get_extension(),

File "cryptography/hazmat/bindings/openssl/binding.py", line 89, in __init__

self._ensure_ffi_initialized()

File "cryptography/hazmat/bindings/openssl/binding.py", line 109, in _ensure_ffi_initialized

libraries=libraries,

File "cryptography/hazmat/bindings/utils.py", line 80, in build_ffi

extra_link_args=extra_link_args,

File "/tmp/pip_build_pi314/cryptography/cffi-0.8.6-py2.7-linux-x86_64.egg/cffi/api.py", line 340, in verify

lib = self.verifier.load_library()

File "/tmp/pip_build_pi314/cryptography/cffi-0.8.6-py2.7-linux-x86_64.egg/cffi/verifier.py", line 75, in load_library

return self._load_library()

File "/tmp/pip_build_pi314/cryptography/cffi-0.8.6-py2.7-linux-x86_64.egg/cffi/verifier.py", line 151, in _load_library

return self._vengine.load_library()

File "/tmp/pip_build_pi314/cryptography/cffi-0.8.6-py2.7-linux-x86_64.egg/cffi/vengine_cpy.py", line 149, in load_library

raise ffiplatform.VerificationError(error)

cffi.ffiplatform.VerificationError: importing '/tmp/pip_build_pi314/cryptography/cryptography/hazmat/bindings/__pycache__/_Cryptography_cffi_79a5b0a3x3a8a382.so': /tmp/pip_build_pi314/cryptography/cryptography/hazmat/bindings/__pycache__/_Cryptography_cff i_79a5b0a3x3a8a382.so: undefined symbol: EC_GFp_nistp224_method

2 个回答

1

你需要安装 openssl-devel 这个库。

yum install openssl-devel

可以参考 这里 的内容。

5

因为你在使用Ubuntu系统,所以你需要安装libssl-dev这个软件包。

sudo apt-get install libssl-dev

你还需要安装libffi-develpython-dev这两个软件包。

sudo apt-get install libffi-dev python-dev

撰写回答