how to avoid Permission denied while installing package for Python without sudo

Anthony picture Anthony · Mar 21, 2014 · Viewed 28.2k times · Source

I am trying to install the tesseract wrapper for python as user mike so that I can import tesseract. I'm following the guide here https://code.google.com/p/python-tesseract/wiki/HowToCompilePythonTesseractForCentos

However, when I execute python setup.py install

I get the error below:

    [Errno 13] Permission denied: '/usr/local/lib/python2.7/site-packages/test-easy-install-7351.write-test'

The installation directory you specified (via --install-dir, --prefix, or
the distutils default setting) was:

    /usr/local/lib/python2.7/site-packages/

I do have sudo access but here is the problem: When I login as root the default python version is 2.6, however, when I login as mike the default python version is 2.7 (this is the one I want). So if I do sudo python setup.py install then the installation for tesseract is taking place on 2.6 rather than on 2.7.

What can I do in this scenario? Should I change permissions on the site-packages folder? I'm a bit out of options...

Answer

m.wasowski picture m.wasowski · Mar 21, 2014

try python setup.py install --user

This will install the package on /home/your_user/.local/lib/pythonX.X/site-packages/ instead of /usr/local/lib/ where you don't have permissions (unless you use sudo).