Problems installing Python on server

Paul Boddie paul at boddie.org.uk
Thu Jan 31 11:21:07 EST 2008


On 28 Jan, 22:28, Yansky <thegoodd... at gmail.com> wrote:
> I asked my hosting company if they would upgrade Python on my server
> to the latest version. They responded with:
>
> "Sorry no. We tend to stick with what comes packaged with the unix
> distribution to ease maintenance issues.

Which version are they running, by the way?

> There is nothing stopping you from running your own version of python
> from within your own account. Download the source and compile it and
> install it into your own space. Adjust the fist line of your python
> scripts to reflect the location of YOUR python binary:
>
> #! /home/youraccount/yourlibs/python
>
> and you should be all set."

This sounds like reasonable advice, I suppose.

> The build instructions for Python are:
> To start building right away (on UNIX): type "./configure" in the
> current directory and when it finishes, type "make". This creates an
> executable "./python"; to install in usr/local, first do "su root" and
> then "make install".
>
> The problem is, I don't have root access to the server so I can't do
> the "make install".

I think that the "su root" stuff is just there in anticipation of
people trying to configure, build and install Python without thinking
too hard about it and then finding that they get lots of errors about
installing into places they don't have permissions for. If you're
installing into a different location, you only need to have
permissions to write to that location.

> I have ubuntu on my computer, but from what I understand I can't
> compile it on that and upload it because the server
> runs Red Had and the ./configure would have made it incompatible
> right?

If you have shell access on the hosting service and they have
compilers available, you can just do the build and install there.
Building on your own computer and having the executable work on the
server is likely to be more difficult due to the usual library
versioning issues that arise between distributions - it'd be
interesting to see if anyone can suggest a solution for this involving
the LSB tools.

> So how can I build Python without root access?

Something like this:

  mkdir /home/youraccount/apps # optional - see below
  ./configure --prefix=/home/youraccount/apps
  make
  make install

Here, the apps directory in your home directory will contain the usual
UNIX directory structure that you would otherwise see in /usr:
directories such as bin, lib, share (probably), and so on. You'll find
the python executable as /home/youraccount/apps/bin/python.

Some people like to mimic the full UNIX structure and have a usr
directory (either underneath or instead of the apps directory employed
above); others prefer to have the bin, lib (and other directories) in
their home directory (thus omitting the apps directory); you get to
choose. ;-)

I hope this helps!

Paul



More information about the Python-list mailing list