当我导入蟒接口卷曲,它显示该错误较旧MAC OS的ImportError:pycurl:libcurl的链路时版本(7.37.1)比编译时版本(7.43.0)
ImportError: pycurl: libcurl link-time version (7.37.1) is older than compile-time version (7.43.0).
如何解决它?我的系统是优胜美地。
当我导入蟒接口卷曲,它显示该错误较旧MAC OS的ImportError:pycurl:libcurl的链路时版本(7.37.1)比编译时版本(7.43.0)
ImportError: pycurl: libcurl link-time version (7.37.1) is older than compile-time version (7.43.0).
如何解决它?我的系统是优胜美地。
好的,由于此答案仍会在Google搜索中弹出,因此我将分享我的解决方法来解决此问题。
主要思想安装的卷曲和力联得到一个跟上时代的卷曲BREW版本:
$ curl --version
curl 7.52.1 (x86_64-apple-darwin16.1.0) libcurl/7.52.1 OpenSSL/1.0.2j zlib/1.2.8 nghttp2/1.18.1
所以,你以后可以使用pycurl,链接对你的libcurl
和openssl
brew install curl
brew link curl --force
brew install openssl
export LIBRARY_PATH=/usr/local/opt/openssl/lib
export CPATH=/usr/local/opt/openssl/include
pip --no-cache-dir install pycurl
python -c "import pycurl"
希望有所帮助!
这个解决方案不适用于MacOSX 10.11.6。操作系统附带的CURL使用SecureTransport。它不是用OpenSSL构建的。有人也在这里写了一篇文章:https://daniel.haxx.se/blog/tag/securetransport/ – MickaelT
我在Sierra遇到这个错误。感谢seeliuh在这篇文章issue中发布的帖子后,我做了如下修改:
1.uninstall pycurl。
pip uninstall pycurl
2.export LD_LIBRARY_PATH = <<your homebrew's libcurl path>>
export LD_LIBRARY_PATH=/usr/local/opt/curl/lib
export LIBRARY_PATH=/usr/local/opt/curl/lib
3.reinstall pycurl
easy_install pycurl # you also can try to use pip though using it here probably would cause some problems
注:
If libcurl is linked dynamically with pycurl, you may have to alter the LD_LIBRARY_PATH environment variable accordingly. This normally applies only if there is more than one version of libcurl installed, e.g. one in /usr/lib and one in /usr/local/lib.
所以,你应该把你的LD_LIBRARY_PATH
改成你自制的libcurl路径。 (你自制的libcurl的版本应该比编译时版本要大,请检查一下。)
这并没有为我解决它。 – Nate
你打开“python”的系统版本还是第三方版本?什么是'$ PYTHONPATH'设置为? – Droppy
我使用pyenv来管理我的python,系统版本python 2.7和第三方python 3.5。 –
那么,两天后,我没有做任何事情,我很好...我很困惑... –