Ubuntu: pip not working with python3.4

Question:

Trying to get pip working on my Ubuntu pc. pip seems to be working for python2.7, but not for others.

Here’s the problem:

$ pip
Traceback (most recent call last):
File "/usr/local/bin/pip", line 9, in <module>
load_entry_point('pip==1.4.1', 'console_scripts', 'pip')()
File "/usr/local/lib/python3.4/dist-packages/setuptools-1.1.5-py3.4.egg /pkg_resources.py", line 357, in load_entry_point
def get_entry_info(dist, group, name):
File "/usr/local/lib/python3.4/dist-packages/setuptools-1.1.5-py3.4.egg/pkg_resources.py", line 2394, in load_entry_point
break
File "/usr/local/lib/python3.4/dist-packages/setuptools-1.1.5-py3.4.egg/pkg_resources.py", line 2108, in load
name = some.module:some.attr [extra1,extra2]
ImportError: No module named 'pip'

$ which pip
/usr/local/bin/pip

$ python2.7 -m pip //here can be just python, btw
Usage:   
/usr/bin/python2.7 -m pip <command> [options]
//and so on...

$ python3.4 -m pip
/usr/bin/python3.4: No module named pip

From the home/user/.pip/pip.log :

Exception:
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/pip/basecommand.py", line 122, in main
status = self.run(options, args)
File "/usr/lib/python2.7/dist-packages/pip/commands/install.py", line 283, in run
requirement_set.install(install_options, global_options, root=options.root_path)
File "/usr/lib/python2.7/dist-packages/pip/req.py", line 1431, in install
requirement.uninstall(auto_confirm=True)
File "/usr/lib/python2.7/dist-packages/pip/req.py", line 598, in uninstall
paths_to_remove.remove(auto_confirm)
File "/usr/lib/python2.7/dist-packages/pip/req.py", line 1836, in remove
renames(path, new_path)
File "/usr/lib/python2.7/dist-packages/pip/util.py", line 295, in renames
shutil.move(old, new)
File "/usr/lib/python2.7/shutil.py", line 303, in move
os.unlink(src)
OSError: [Errno 13] Permission denied: '/usr/bin/pip'

There’s no /usr/bin/pip btw.

How can I fix this issue to work with pip and python 3.4 normally?
I am trying to use pycharm, but it’s package manager also stucks in this problem.

Thanks for attention!

Asked By: val_

||

Answers:

You have pip installed for python 2, but not python 3.

Ubuntu distributes python-pip, python3-pip, python-setuptools and python3-setuptools packages, which you can install (apt-get install etc) as necessary. Thereafter, note that pip installs for python 2, and pip3 installs for python 3 (similar to python, and python3).

Setuptools could be said to provide python’s “build” process for packages, and Pip provides its “install” process. Usually you want both present.

If you want the very latest pip / setuptools, you could always get it from PyPA’s bootstrap site:

$ curl https://bootstrap.pypa.io/get-pip.py | python3.4

Afterwards you can install the latest setuptools for the appropriate python, e.g

$ python{2.7,3.4} -m pip install -U setuptools

If you try to install these for the system python, you might need root / sudo.

Answered By: Ivo

I had a similar issue when running this command on my raspberry pi

python3.4 -m pip install RPi.GPIO

and got this error

/usr/bin/python3.4: No module named pip

resolved it by installing python3-pip

sudo apt-get install python3-pip
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
sudo python3 get-pip.py

confirm its installation:

pip3 --version    

or

python3 -m pip --version

now go ahead and install your desired packages (for example numpy) using:

pip3 install numpy

or

python3 -m pip install numpy

Here is the reference: https://pip.pypa.io/en/stable/installing/

Answered By: Zahra

This worked on my Ubuntu 19.04:

sudo apt install python3-pip

Then pip3 or python3 -m pip to install python packages.

Answered By: Cees Timmerman
Categories: questions Tags: , , ,
Answers are sorted by their score. The answer accepted by the question owner as the best is marked with
at the top-right corner.