(no subject)
Jacek M. Holeczek (holeczek@usctoux1.cto.us.edu.pl)
Mon, 23 Mar 1998 15:29:45 +000 (MET)
> the current binary ROOT distribution for Linux does not work on RH v5.0.
> Soon, when I've my RH5.0 machine running, we'll also distribute a binary
> for it. For the time being you'll have to rebuilt ROOT for RH5 yourself
> from the source.
Let's don't exaggerate.
For me, the problem lies in libc and libm which in RH5.0 are glibc 2.0
( aka libc.6 ) while older Linuxes use libc.5. There is a simple solution
to this problem. Find ( by ftpsearch, or from nearest GNU mirror ) the
binary kit for libc.5 ( for example libc.5.38, or libc.5.44 ), uncompress
them with, e.g., tar xvzf libc.tar.gz in the subdirectory where you keep
ROOT shared libraries ( for example ) and then do there :
ln -s libc.so.5.4.38 libc.so
ln -s libc.so.5.4.38 libc.so.5
ln -s libm.so.5.0.9 libm.so
ln -s libm.so.5.0.9 libm.so.5
You need ONLY these two shared libraries from the binary kit.
Finally you just need to change the library path, to use the above
libraries instead of the default libraries :
LD_LIBRARY_PATH=/full_path_to_root_libraries/:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH
and ... you can call root.
Note here that in this way the OLD libc and libm will be the default
libraries for ALL programs, not only for the root. To escape from this
problem you could write a small shell script :
#!/bin/sh
# ROOT startup script
LD_LIBRARY_PATH=/full_path_to_root_libraries/:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH
/full_path_to_root_executable/root $@
So that the new LD_LIBRARY_PATH will be seen only when calling root ( the
same applies probably to cint ).
I haven't tried it, but it should work.
Jacek.