autoconf (and any build systems emulating the "./configure" build script)
support a nice --prefix= switch which allows you to install the software
to an easily writable section of your filesystem.

No need for containers, chroots, root access, or weird, package-specific
build/packaging scripts such as RVM (Ruby Version Manager).  Just set
PATH and LD_LIBRARY_PATH appropriately.

I can still link to system libraries provided by my GNU/Linux distro, or
I can pass additional arguments and use LD_LIBRARY_PATH/-Wl,-rpath as
necessary to point linkage to newer development versions as needed.

I do this for each project I want the latest revisions of and leave any
distribution-supplied installations untouched.

Sometimes I'll even configure the prefix to be /tmp/$SOMETHING if I
don't care about using something past a reboot :)

Fwiw, GNU/Linux distribution maintainers are likely to set --prefix=/usr
whereas the default is --prefix=/usr/local

And even non-autotooled build systems such as the default GNU Make-based
build system in git supports it.  Heck, git was probably the first
project I encountered to default the prefix to $HOME instead of
/usr/local

Reply via email to