"but it failed" does not provide enough information about what went wrong, but I have a few hunches. What specific command line options are you trying to use? What error message do you receive?
A few tips for building stuff locally:
- You might need other updated dependencies such as GLib.
- For Autoconf-based programs (that is, usually, given away by the fact that a
./configure
script exists), you need to specify--prefix=/some/writable/dir
as well as set the environment variablePKG_CONFIG_PATH
to pointpkg-config
at the right place. - You basically need to create a directory, e.g.
/home/you/usr
which is your local equivalent to/usr
, and convince the build scripts of libraries such asGLib
andGTK
to use/home/you/usr
for everything -- when in doubt, run the config script withstrace -Ff -eopen
if you can, and see what files it accesses in/usr
and then google a way to get it to look in/home/you/usr
instead. - You may also have to override the default install path for libraries by passing
--libdir=/home/you/usr/lib
to the configure script. - The linkage -- that is, which directories are taken to be linked against for each link step -- is handled by correctly installing the
.pc
files for the dependency libraries into/home/you/usr/lib/pkg-config
. So, in other words, the automatically-generated.pc
files that get installed into/home/you/usr/lib/pkg-config
when you runmake install
on an autotooled program will, assuming you setPKG_CONFIG_PATH
correctly, tell the compiler to link against/home/you/usr/lib/libglib-2.0.so
and not/usr/lib/libglib-2.0.so
(for example).