Python import library from tar.gz?

B.Mr.W. picture B.Mr.W. · Aug 11, 2013 · Viewed 11.1k times · Source

I am working on a box which I don't have root access. However, there is a folder /share which would be accessed for everyone to read and write.

I want to figure out a way to put python libraries so that everyone could access and use them.

I figured out that I can put the egg file in the /share/pythonLib folder and in the python script.

import sys
sys.path.append("/share/pythonLib/foo.egg")
import foo

and it would work for everyone, however, I am not sure every library has egg version. For example, I am trying to install BeautifulSoup4 , however, there is only tar.gz file and I am not sure if it would be possible to convert to egg and ..etc.

OR! I am wrong right at the BEGINNING, and there are indeed some pythonic magics like below:

magicadd /share/pythonLib/foo.tar.gz
import foo

Answer

Viktor Kerkez picture Viktor Kerkez · Aug 11, 2013

tar.gz is the source code of the library. You should unpack it, and you will find a setup.py script inside. Run:

python setup.py install --prefix=/share/pythonLib

This will create:

/share/pythonLib/lib/python2.7/site-packages/

In your scripts append that path to sys.path and everything should work fine.