How do I install packages with pip when there are multiple Python versions?
You have two options, but either way, you need to get easy_install-3.2. Since it doesn't seem to be packaged, you have to install it yourself. Fortunately that's easy. And you should also get python3-pkg-resources, which is packaged:
sudo apt-get install python3-pkg-resources
wget http://python-distribute.org/distribute_setup.py
sudo python3 distribute_setup.py
Now you can just use easy_install-3.2 to install Pyramid, or go ahead and install pip in Python3.
OPTION 1:
sudo easy_install-3.2 pyramid
OPTION 2:
sudo easy_install-3.2 pip
sudo pip-3.2 install pyramid
Alternatively, if you want to install specific version of the package with the specific version of python, this is the way
sudo python2.7 -m pip install pyudev=0.16
If the "=" doesnt work, use "=="
sudo python2.7 -m pip install pyudev=0.16
Ouput: Invalid requirement: 'pyudev=0.16' = is not a valid operator. Did you mean == ?
sudo python2.7 -m pip install pyudev==0.16
works fine
Each python
binary should have its own pip
executable.
You get one automatically if you use virtualenv
. Then you could just run pip install pyramid
in an activated virtualenv e.g.:
$ vex venv pip install pyramid
If you want to use pip
to install for a system python3
then you could install pip
for it:
$ sudo apt-get install python3-pip
It installs pip3
program. Then:
$ pip3 install --user pyramid
installs pyramid
in ~/.local
directory tree.
If you need to test a Python package on several python versions; you could use tox
.
In the case where you have installed a separate user-only version of Python by downloading and extracting the tar.gz from the Python.org Downloads page and done a:-
tar -xzf Python-x.x.x.tar.gz
cd Python-x.x.x/
./configure
make
You can use get-pip to install and run pip for this Python install only.
Download it with curl as per the git-pip instructions. Then, within your Python-x.x.x/ directory, run:
./python -m get-pip.py --user
./python -m pip install pyramid --user