[
Home
]
[ Index:
by date
|
by threads
]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: | 2005-01-03 (23:42) |
From: | Thomas Fischbacher <Thomas.Fischbacher@P...> |
Subject: | Re: [Caml-list] libc.so.6 |
On Mon, 3 Jan 2005, Ignacio Alvarez-Hamelin wrote: > I have some problems with this library because I compiled a program in one > computer with version 2.3.3 and I need tu run my program in other computer > with an ancient version of libc.so.6 (it seems be the 2.0, anyway is from > Jan 19 2001). I have not access to the last computer then it is not > possible to recompile my program in ocaml with the ancient version. > Somebody knows how to solve this problem? Well, there is a workaround, but I would never call this a solution: assuming you are using linux, copy /lib/ld-linux.so.2, libc, and all the other libraries you need to a dedicated directory DIR and start your program with a wrapper script that sets LD_LIBRARY_PATH to $DIR and then calls $DIR/ld-linux.so.2 <your-program>... Dear children on this list, DO NOT TRY THIS AT HOME. This method _sucks_. Sometimes, it is the fastest and easiest way to get software where one experiences such problems to run esp. on not too well maintained or otherwise braindead systems (people using CMU CL on redhat derivatives might know what I mean...), but it is at best an evil evil ugly workaround that does not work too well with run-time dynamic linking (libdl) and causes a score of other problems. Unfortunately, there ARE some well known and widespread libraries in use in the physics world that use just this technique to do utterly evil stuff like overriding X libraries with broken old versions with known security problems - only to get a known, homogeneous environment across a variety of platforms. In one particular instance, install scripts like to even put . permanently into LD_LIBRARY_PATH. Again, DO NOT DO THIS WITH SOFTWARE YOU HAND OVER TO OTHER PEOPLE. There are better solutions to achieve the same effect: please use a properly designed rootkit instead. -- regards, tf@cip.physik.uni-muenchen.de (o_ Thomas Fischbacher - http://www.cip.physik.uni-muenchen.de/~tf //\ (lambda (n) ((lambda (p q r) (p p q r)) (lambda (g x y) V_/_ (if (= x 0) y (g g (- x 1) (* x y)))) n 1)) (Debian GNU)