简体   繁体   English

无法在Ubuntu 14.04上安装和升级python软件包

[英]Cannot install and upgrade python packages on Ubuntu 14.04

I am trying to install some python packages but I am getting this kind of error every time. 我正在尝试安装一些python软件包,但每次都遇到这种错误。

The directory '/home/username/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.

The directory '/home/username/.cache/pip' or its parent directory is not owned by the current user and caching wheels has been disabled. 目录'/home/username/.cache/pip'或它的父目录不属于当前用户,并且缓存轮已被禁用。 check the permissions and owner of that directory. 检查该目录的权限和所有者。 If executing pip with sudo, you may want sudo's -H flag. 如果使用sudo执行pip,则可能需要sudo的-H标志。

Exception:
Traceback (most recent call last):
   File "/usr/lib/python2.7/dist-packages/pip/basecommand.py", line 209, in main
status = self.run(options, args)
  File "/usr/lib/python2.7/dist-packages/pip/commands/install.py", line 317, in run
requirement_set.prepare_files(finder)
  File "/usr/lib/python2.7/dist-packages/pip/req/req_set.py", line 360, in prepare_files
ignore_dependencies=self.ignore_dependencies))
  File "/usr/lib/python2.7/dist-packages/pip/req/req_set.py", line 512, in _prepare_file
finder, self.upgrade, require_hashes)
  File "/usr/lib/python2.7/dist-packages/pip/req/req_install.py", line 273, in populate_link
self.link = finder.find_requirement(self, upgrade)
  File "/usr/lib/python2.7/dist-packages/pip/index.py", line 442, in find_requirement
all_candidates = self.find_all_candidates(req.name)
  File "/usr/lib/python2.7/dist-packages/pip/index.py", line 400, in find_all_candidates
for page in self._get_pages(url_locations, project_name):
  File "/usr/lib/python2.7/dist-packages/pip/index.py", line 545, in _get_pages
page = self._get_page(location)
  File "/usr/lib/python2.7/dist-packages/pip/index.py", line 648, in _get_page
return HTMLPage.get_page(link, session=self.session)
  File "/usr/lib/python2.7/dist-packages/pip/index.py", line 757, in get_page
"Cache-Control": "max-age=600",
  File "/usr/share/python-wheels/requests-2.9.1-py2.py3-none-any.whl/requests/sessions.py", line 480, in get
return self.request('GET', url, **kwargs)
  File "/usr/lib/python2.7/dist-packages/pip/download.py", line 378, in request
return super(PipSession, self).request(method, url, *args, **kwargs)
  File "/usr/share/python-wheels/requests-2.9.1-py2.py3-none-any.whl/requests/sessions.py", line 468, in request
resp = self.send(prep, **send_kwargs)
  File "/usr/share/python-wheels/requests-2.9.1-py2.py3-none-any.whl/requests/sessions.py", line 576, in send
r = adapter.send(request, **kwargs)
  File "/usr/share/python-wheels/CacheControl-0.11.5-py2.py3-none-any.whl/cachecontrol/adapter.py", line 46, in send
resp = super(CacheControlAdapter, self).send(request, **kw)
  File "/usr/share/python-wheels/requests-2.9.1-py2.py3-none-any.whl/requests/adapters.py", line 376, in send
timeout=timeout
  File "/usr/share/python-wheels/urllib3-1.13.1-py2.py3-none-any.whl/urllib3/connectionpool.py", line 610, in urlopen
_stacktrace=sys.exc_info()[2])
  File "/usr/share/python-wheels/urllib3-1.13.1-py2.py3-none-any.whl/urllib3/util/retry.py", line 228, in increment
total -= 1
TypeError: unsupported operand type(s) for -=: 'Retry' and 'int'

I looked it up on this site and Stack Overflow and all the solutions suggest installing 我在此站点和Stack Overflow上进行了查找,所有解决方案均建议安装

wheel or 车轮或

setuptools But I am getting setuptools但我越来越

Requirement already satisfied 要求已经满足

The same problem occurs for trying to upgrade python packages. 尝试升级python软件包时会发生相同的问题。

Some of the commands that give me this error are: 给我这个错误的一些命令是:

sudo pip install -U textblob

My pip version is pip 8.1.1 我的点子版本是点子8.1.1

What should I do? 我该怎么办?

Try, as suggested by the error message , running: 根据错误消息的建议,尝试运行:

sudo -H pip install -U textblob

It is also well worth making sure that your version of pip is up to date with: 确保您的pip版本与以下版本保持一致也很值得:

sudo python -m pip install -U pip

or 要么

sudo -H python -m pip install -U pip

This happens to me frequently. 这经常发生在我身上。 Try this: 尝试这个:

pip install textblob --user

This will work fine with other packages as well. 这也将与其他软件包一起正常工作。

Thanks ! 谢谢 !

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM