使用 virtualenv 15.0.3、python 2.7.12、pip 8.1.2、wheel 0.30.0.a0 和 setuptools 18.5。
注意:如果我尝试安装 _without_ 一个 venv 它可以工作,没有 SSL 问题。 因此,我想在这里检查以防可能存在与virtualenv
相关的问题。
$ virtualenv tester
Installing setuptools, pip, wheel...done.
$ . tester/bin/activate
(tester) $ cd PROJECT
(tester) $ pip install -e .
Obtaining file:///Users/jdandrea/projects/MyProject
Complete output from command python setup.py egg_info:
Download error on https://pypi.python.org/simple/pbr/: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590) -- Some packages may not be found!
Couldn't find index page for 'pbr' (maybe misspelled?)
Download error on https://pypi.python.org/simple/: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590) -- Some packages may not be found!
No local packages or working download links found for pbr>=1.8
Traceback (most recent call last):
......
另请参阅:完整的回溯。
据报道,virtualenv 14.0.6解决了关于 certs 的 SSL 问题。 也许这是一个不同/新的问题? 不确定。
有趣的。 我刚刚发现,如果我首先在 venv 中手动安装pbr
,则pip install -e .
可以在没有任何 SSL 投诉的情况下工作。
我用一个全新的 venv 仔细检查了这个:
# go to project directory
$ pip install -e .
Obtaining file:///Users/jdandrea/projects/myproject
Complete output from command python setup.py egg_info:
Download error on https://pypi.python.org/simple/pbr/: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590) -- Some packages may not be found!
Couldn't find index page for 'pbr' (maybe misspelled?)
Download error on https://pypi.python.org/simple/: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590) -- Some packages may not be found!
No local packages or working download links found for pbr>=1.8
Traceback (most recent call last):
......
$ pip install pbr>=1.8
$ pip list | grep pbr
pbr (1.10.0)
$ pip install -e
# everything installs, zero errors
我注意到一切都来自缓存,所以我重新创建了 venv 并再次尝试,这次使用--no-cache-dir
。
除非我安装pbr
@manually作为第一步,否则安装仍然失败:
$ pip install --no-cache-dir 'pbr>=1.8'
Collecting pbr>=1.8
Downloading pbr-1.10.0-py2.py3-none-any.whl (96kB)
......
Installing collected packages: pbr
Successfully installed pbr-1.10.0
$ pip install --no-cache-dir -e .
# everything installs, zero errors
问题解决了! 不是 virtualenv 问题。
由于我也在使用 MacPorts, sudo port install curl-ca-bundle
(见这篇文章)立即解决了它。
所以你只需要在 Python 中安装一个实际的 ca-bundle,或者告诉你的操作系统使用更新的操作系统?
最有用的评论
有趣的。 我刚刚发现,如果我首先在 venv 中手动安装
pbr
,则pip install -e .
可以在没有任何 SSL 投诉的情况下工作。我用一个全新的 venv 仔细检查了这个:
我注意到一切都来自缓存,所以我重新创建了 venv 并再次尝试,这次使用
--no-cache-dir
。除非我安装
pbr
@manually作为第一步,否则安装仍然失败: