Python - manually install package using virtualenv

Jamison picture Jamison · May 12, 2011 · Viewed 44.6k times · Source

I have a python program I want to install into my virtualenv - it's a zip package that I need to unzip and then run a setup.py program - but my question is more regarding how to get these unzipped files into my virtualenv so that the package gets installed into the virtualenv's site-packages folder?

I can also install from inside my virtualenv using pip install <package name>, but for some reason, the package that PIP downloads is out of date.

So - can someone tell me a few easy steps for installing a package manually?

So far I have the basic commands to load up the Virtualenv:

-bash-3.2$ source ~/.bashrc
-bash-3.2$ workon test
(test)-bash-3.2$ //Now I'm working on my virtualenv, but where do I go after this??

So - does it matter where I unzip the python package/program to - or should I be logged in to the virtualenv first before unzipping? After I load up the virtualenv and I'm inside using it with the 'workon test' command, will any python package I install, regardless of the directory I find it, install itself into the proper virtualenv's site-packages folder?

Option 1 is to unzip the python program into /home/username/tmp - then log into my virtualenv, navigate to that folder and run the setup.py program - assuming that the virtualenv will transfer all relevant files to it's own site-packages folder.

OR scenario 2 is to unzip the files directly into site-packages, and run it from there (after logging in to the virtualenv), etc

Thank you for helping a Python clutz with this!

Answer

dwelch picture dwelch · May 12, 2011

I typically would extract the program to a temporary folder, then from that folder, run the setup.py using the direct path to the virtualenv python instance. eg if your virtualenv is in /home/username/virtualpy, use this (from your temporary folder)

/home/username/virtualpy/bin/python setup.py install

This should install it to your virtualenv site package folder.