Dan*_*y M 2 pycurl macos-high-sierra
我将Mac更新为High Sierra,现在无法安装pycurl。它失败,并显示以下消息:Curl is configured to use SSL, but we have not been able to determine which SSL backend it is using. Please see PycURL documentation for how to specify the SSL backend manually.
我在文档和网络上进行了搜索,发现了一些无法解决问题的解决方案。最受欢迎的是这个:
pip uninstall pycurl
export PYCURL_SSL_LIBRARY=openssl
pip install pycurl
Run Code Online (Sandbox Code Playgroud)
这是完整的错误
从我的virtualenv中发布时,与您发现的解决方案相似的解决方案对我有用。我使用Homebrew作为macOS High Sierra上的软件包管理器,并使用Pipenv来管理我的项目依赖项和virtualenv。在将PyVURL作为依赖项的PyVimeo API库添加到我的项目后,出现了错误。
首先产生的错误是
src / pycurl.c:137:4:警告:#warning“ libcurl已使用SSL支持进行编译,但是configure无法确定使用哪个库;因此将不会设置SSL加密锁定回调,这可能会导致SSL请求随机崩溃” [-Wcpp]
然后,
ImportError:pycurl:libcurl链接时SSL后端(openssl)与编译时SSL后端(无/其他)不同
如PycURL文档中所述,解决方案是“告诉[PycURL's] setup.py使用了什么SSL后端”。仅设置的输出中建议的环境变量brew info openssl并不能解决问题。
然后,我找到了与切线相关的Github问题注释,并在项目的virtualenv中尝试了以下操作:
(env)$ pip uninstall pycurl
(env)$ pip install --upgrade pip
(env)$ export LDFLAGS=-L/usr/local/opt/openssl/lib
(env)$ export CPPFLAGS=-I/usr/local/opt/openssl/include
(env)$ export PYCURL_SSL_LIBRARY=openssl
(env)$ pip install pycurl
Run Code Online (Sandbox Code Playgroud)
该install命令给出以下输出:
使用缓存的 https://files.pythonhosted.org/packages/e8/e4/0dbb8735407189f00b33d84122b9be52c790c7c3b25286826f4e1bdb7bde/pycurl-7.43.0.2.tar.gz 收集包的车轮:pycurl运行setup.py bdist_wheel ...在以下目录中:/ Users / me / Library / Caches / pip / wheels / d2 / 85 / ae / ebf5ff0f1378a69d082b4863df492bf54c661bf6306a2bd成功构建pycurl tuspy 0.2.1的要求pycurl == 7.43.0,但您将拥有pycurl 7.430.2。不相容。安装收集的软件包:pycurl成功安装pycurl-7.43.0.2
我注意到了(有些琐碎?)tuspy错误并拖延了。这次,我的脚本运行时没有抱怨PycURL。
| 归档时间: |
|
| 查看次数: |
2355 次 |
| 最近记录: |