首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >升级到Python 2.7.10_2会导致包出现“图像未找到”的失败

升级到Python 2.7.10_2会导致包出现“图像未找到”的失败
EN

Stack Overflow用户
提问于 2015-07-14 12:07:50
回答 2查看 2.7K关注 0票数 4

使用以下方法更新Homebrew

代码语言:javascript
复制
brew update
brew upgrade --all

这导致Python更新为2.7.10_2,pip (和许多其他脚本)将失败。

代码语言:javascript
复制
cffi.ffiplatform.VerificationError: importing '/usr/local/lib/python2.7/site-packages/cryptography/_Cryptography_cffi_a269d620xd5c405b7.so': dlopen(/usr/local/lib/python2.7/site-packages/cryptography/_Cryptography_cffi_a269d620xd5c405b7.so, 2): Library not loaded: /usr/local/lib/libssl.1.0.0.dylib
  Referenced from: /usr/local/lib/python2.7/site-packages/cryptography/_Cryptography_cffi_a269d620xd5c405b7.so
  Reason: image not found

我能做些什么来恢复或调整我的Python配置以使它再次工作?是什么破坏了它?

代码语言:javascript
复制
Traceback (most recent call last):
  File "/usr/local/bin/eb", line 7, in <module>
    from ebcli.core.ebcore import main
  File "/usr/local/lib/python2.7/site-packages/ebcli/core/ebcore.py", line 43, in <module>
    from . import globals, base, io, hooks
  File "/usr/local/lib/python2.7/site-packages/ebcli/core/hooks.py", line 20, in <module>
    from ..lib import aws
  File "/usr/local/lib/python2.7/site-packages/ebcli/lib/aws.py", line 19, in <module>
    import botocore.session
  File "/usr/local/lib/python2.7/site-packages/ebcli/bundled/botocore/session.py", line 27, in <module>
    import botocore.credentials
  File "/usr/local/lib/python2.7/site-packages/ebcli/bundled/botocore/credentials.py", line 30, in <module>
    from botocore.utils import InstanceMetadataFetcher, parse_key_val_file
  File "/usr/local/lib/python2.7/site-packages/ebcli/bundled/botocore/utils.py", line 25, in <module>
    from botocore.vendored import requests
  File "/usr/local/lib/python2.7/site-packages/ebcli/bundled/botocore/vendored/requests/__init__.py", line 53, in <module>
    from .packages.urllib3.contrib import pyopenssl
  File "/usr/local/lib/python2.7/site-packages/ebcli/bundled/botocore/vendored/requests/packages/urllib3/contrib/pyopenssl.py", line 55, in <module>
    import OpenSSL.SSL
  File "/usr/local/lib/python2.7/site-packages/OpenSSL/__init__.py", line 8, in <module>
    from OpenSSL import rand, crypto, SSL
  File "/usr/local/lib/python2.7/site-packages/OpenSSL/rand.py", line 11, in <module>
    from OpenSSL._util import (
  File "/usr/local/lib/python2.7/site-packages/OpenSSL/_util.py", line 7, in <module>
    binding = Binding()
  File "/usr/local/lib/python2.7/site-packages/cryptography/hazmat/bindings/openssl/binding.py", line 114, in __init__
    self._ensure_ffi_initialized()
  File "/usr/local/lib/python2.7/site-packages/cryptography/hazmat/bindings/openssl/binding.py", line 126, in _ensure_ffi_initialized
    cls._modules,
  File "/usr/local/lib/python2.7/site-packages/cryptography/hazmat/bindings/utils.py", line 31, in load_library_for_binding
    lib = ffi.verifier.load_library()
  File "/usr/local/lib/python2.7/site-packages/cffi/verifier.py", line 97, in load_library
    return self._load_library()
  File "/usr/local/lib/python2.7/site-packages/cffi/verifier.py", line 207, in _load_library
    return self._vengine.load_library()
  File "/usr/local/lib/python2.7/site-packages/cffi/vengine_cpy.py", line 155, in load_library
    raise ffiplatform.VerificationError(error)
cffi.ffiplatform.VerificationError: importing '/usr/local/lib/python2.7/site-packages/cryptography/_Cryptography_cffi_a269d620xd5c405b7.so': dlopen(/usr/local/lib/python2.7/site-packages/cryptography/_Cryptography_cffi_a269d620xd5c405b7.so, 2): Library not loaded: /usr/local/lib/libssl.1.0.0.dylib
  Referenced from: /usr/local/lib/python2.7/site-packages/cryptography/_Cryptography_cffi_a269d620xd5c405b7.so
  Reason: image not found

OSX 10.10.4;自制0.9.5

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-07-29 07:54:34

蒂姆·史密斯的回答是正确的(他是个自制的维护者!)但它并没有提供实际的解决办法。在梳理完这些问题之后,https://github.com/Homebrew/homebrew/issues/41613https://github.com/pyca/cryptography/issues/2138将使您的python/pip再次使用openssl

代码语言:javascript
复制
brew link openssl --force
pip uninstall cryptography
pip install cryptography --no-use-wheel
brew unlink openssl

第一个链接临时修复pip。密码学是需要重建的库。最后,再次断开openssl的链接。

票数 5
EN

Stack Overflow用户

发布于 2015-07-19 22:43:57

这是一个一次性错误,原因是( 1)我们决定删除OpenSSL的“只限桶”的名称,然后在我们发现它造成了严重的不兼容之后,我们随后退出了该决定。如果您在openssl不只是keg的期间使用OpenSSL从源代码中构建任何内容,则需要重新构建它。这是因为普通包的install_names相对于HOMEBREW_PREFIX和只用于keg的包没有链接到HOMEBREW_PREFIX。(只带桶的包有指向私有前缀的install_names。)很抱歉给您带来不便。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31406148

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档