使用pip

时间:2018-10-26 15:30:54

标签: python macos pip pycurl

我希望有人能提供帮助。 我目前正在2015年的MacBook Pro上构建python环境,该环境在Sierra 10.12.6上运行。 我偶然遇到了许多问题,例如下载模块以运行我的脚本来执行工作任务所需的脚本(例如自动电子邮件等),但是我设法克服了这些问题,但是PyCurl不允许我克服这些问题。

我正在使用的命令以及各种变体实质上是-

sudo pip install pycurl

返回以下内容-

Collecting pycurl
Downloading https://files.pythonhosted.org/packages/e8/e4/0dbb8735407189f00b33d84122b9be52c790c7c3b25286826f4e1bdb7bde/pycurl-7.43.0.2.tar.gz (214kB)
100% |████████████████████████████████| 215kB 5.7MB/s
Complete output from command python setup.py egg_info:
Using curl-config (libcurl 7.54.0)
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/private/tmp/pip-install-rSkgA_/pycurl/setup.py", line 913, in <module>
    ext = get_extension(sys.argv, split_extension_source=split_extension_source)
  File "/private/tmp/pip-install-rSkgA_/pycurl/setup.py", line 582, in get_extension
    ext_config = ExtensionConfiguration(argv)
  File "/private/tmp/pip-install-rSkgA_/pycurl/setup.py", line 99, in __init__
    self.configure()
  File "/private/tmp/pip-install-rSkgA_/pycurl/setup.py", line 316, in configure_unix
    specify the SSL backend manually.''')
__main__.ConfigurationError: 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.

----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /private/tmp/pip-install-rSkgA_/pycurl/

最后的错误真的使我和团队中的开发人员感到沮丧,我真的希望有人能在我用尽办公室资源的同时提供帮助!

编辑:我认为SSL后端问题是首要问题

1 个答案:

答案 0 :(得分:0)

从OS X 10.11 El Capitan开始,似乎Apple stopped including OpenSSL headers

要解决此问题,请通过Homebrew安装OpenSSL:
如果未安装openssl,请如下安装。否则,如果您的Mac上已经安装了openssl,则可以跳过此操作。

brew install openssl

您将收到ssl后端错误。为了帮助pycurl找到OpenSSL标头,我们需要告诉setup.py使用哪个SSL后端以及在哪里可以找到OpenSSL

注意:检查Mac上的openssl-dir位置,然后根据需要进行更改。

pip uninstall pycurl
pip install --install-option="--with-openssl" --install-option="--openssl-dir=/usr/local/opt/openssl" pycurl

根据需要使用sudo。
希望这会有所帮助。