没有sudo,没有任何与python有关的东西

时间:2016-03-03 14:22:01

标签: python setuptools

我处境非常糟糕,因为我在没有完全理解其效果的情况下运行了一些命令。

我无法使用pip,无法在不添加sudo前缀的情况下安装pip。我可以用sudo安装它。 这里有一些错误痕迹

LAP-044:Downloads pratik$ pip install requests
Traceback (most recent call last):
  File "/usr/local/bin/pip", line 5, in <module>
    from pkg_resources import load_entry_point
ImportError: No module named pkg_resources

这是因为setuptools。所以我尝试重新安装设置工具。我收到了这个错误。

LAP-044:Downloads pratik$ curl https://bootstrap.pypa.io/ez_setup.py -o - | python
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 12059  100 12059    0     0  12823      0 --:--:-- --:--:-- --:--:-- 12815
Traceback (most recent call last):
  File "<stdin>", line 415, in <module>
  File "<stdin>", line 411, in main
  File "<stdin>", line 327, in download_setuptools
  File "<stdin>", line 347, in _resolve_version
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 154, in urlopen
    return opener.open(url, data, timeout)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 431, in open
    response = self._open(req, data)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 449, in _open
    '_open', req)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 409, in _call_chain
    result = func(*args)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 1240, in https_open
    context=self._context)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 1197, in do_open
    raise URLError(err)
urllib2.URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590)>

如果我使用python3运行它,则相同的setuptools安装成功。谁能告诉我究竟是什么问题以及如何解决它?

1 个答案:

答案 0 :(得分:0)

我建议您创建一个虚拟环境,您可以在不使用sudo的情况下安装所有内容。这是在Python中最干净的工作方式。

显然,如果Python可执行文件位于需要root权限的目录中,则需要sudo

一旦创建,你应该激活它:

$ source myvirtualenv/bin/activate

然后您可以使用pip安装软件包:

$ (myvirtualenv) pip install [somepackage]

根据您在virtualenv中使用的Python版本,您可能必须安装pip。但它通常附带Python 2.7,它是默认的Python版本

virtualenv docs