This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: using different ld-linux.so.2
- From: Guillaume Duranceau <guillaume dot duranceau at bull dot net>
- To: libc-alpha at sourceware dot org
- Date: Mon, 13 Mar 2006 16:58:48 +0100
- Subject: Re: using different ld-linux.so.2
Hi,
It seems to be difficult to have two glibc coexisting on one system. Several
solutions can be considered, but all of them suffer annoying limitations like:
- relinking applications to the glibc you want to use
- child processes using the original glibc installed on the system, and not
the new one
- switching of glibc temporarily, not only for one program, but for all
applications running on the system
- being root (chroot...)
There's no way to use a second glibc being simple user on the system, without
relinking programs and having child processes using the same glibc as their
father (if there is one actually, please, let me know...). I wonder what
solution glibc hackers use to perform tests on their systems.
The problem seems to come from the fact that the dynamic loader of an
application is hard-coded in the ELF binary. This prevents a child process
from using the same loader than his father. Could it not be possible, by
default, to use the father loader instead of the one noticed in the ELF
binary? This means that the exec system call would have to be modified to take
into account this possibility (and so, I'm talking on the wrong mailing list
:)). This probably may lead to problems I'm not aware of, but I'm just looking
for expert opinions.
Thank you,
Guillaume