On Friday 06 June 2008 03:33, Andreas Jaeger wrote:
Philipp Thomas
writes: On Thu, 05 Jun 2008 14:02:09 -0500, Jim Flanagan wrote:
This method uses configure > make > checkinstall (instead of make install).
Checkinstall has been dropped from openSUSE because it doesn't work anymore. Checkinstall's trick is to load a library via LD_PRELOAD that redirects all functions dealing with files. Now for installing a package you need to be root and for programs running with root privileges the dynamic loader ignores LD_PRELOAD as this would otherwise be a huge security problem.
The behaviour is: For programs being setuid root, LD_PRELOAD is ignored - or more exactly: /* The LD_PRELOAD environment variable gives list of libraries separated by white space or colons that are loaded before the executable's dependencies and prepended to the global scope list. If the binary is running setuid all elements containing a '/' are ignored since it is insecure. */
That suggests that a replacement could be constructed by symlinking from the current directory to the elements of LD_PRELOAD and substituting those local, slash-free symlinks for the names in the original LD_PRELOAD.
Andreas
Randall Schulz -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org