Ubuntu – pip won’t run. throws errors instead

14.04pippythonpython-2.7

I am running into problems when ever I run pip with any arguments or flags. I've tried doing apt-get install --reinstall python-pip but it does not help and am at a loss how to fix this

Version of Ubuntu

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 14.04.1 LTS
Release:    14.04
Codename:   trusty

Version of Python

$ python --version
Python 2.7.6

Pip version

$ dpkg -l | grep pip
ii  python-pip     1.5.4-1     all     alternative Python package installer

Error, I get the exact same error no matter what arguments or flags I try.

$ pip
Traceback (most recent call last):
  File "/usr/bin/pip", line 9, in <module>
    load_entry_point('pip==1.5.4', 'console_scripts', 'pip')()
  File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 351, in load_entry_point
    return get_distribution(dist).load_entry_point(group, name)
  File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 2363, in   load_entry_point
    return ep.load()
  File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 2088, in load
    entry = __import__(self.module_name, globals(),globals(), ['__name__'])
  File "/usr/lib/python2.7/dist-packages/pip/__init__.py", line 11, in <module>
    from pip.vcs import git, mercurial, subversion, bazaar  # noqa
  File "/usr/lib/python2.7/dist-packages/pip/vcs/mercurial.py", line 9, in <module>
    from pip.download import path_to_url
  File "/usr/lib/python2.7/dist-packages/pip/download.py", line 25, in <module>
    from requests.compat import IncompleteRead
ImportError: cannot import name IncompleteRead

Best Answer

Seems to be a bug that it is reported here

It should work if you install a later version of pip.

You can remove the current pip installation with:

sudo apt-get purge python-pip

Then install it from github(it is a later version):

wget https://raw.github.com/pypa/pip/master/contrib/get-pip.py
python get-pip.py

Edit
If it still won't work try this as it says so in the installation documentation(after you installed the new version):

To enable the use of pip from the command line, ensure the Scripts subdirectory of your Python installation is available on the system PATH. (This is not done automatically.)

References:

  1. https://pip.pypa.io/en/latest/installing.html
  2. https://bugs.launchpad.net/ubuntu/+source/python-pip/+bug/1306991
Related Question