Running Ubuntu 10.04
$ uname -a
Linux minion 2.6.32-36-generic-pae #79-Ubuntu SMP Tue Nov 8 23:25:26 UTC 2011 i686 GNU/Linux
CFLAGS="-O2 -U_FORTIFY_SOURCE -fno-stack-protector" '/home/user/Desktop/eglibc-2.11.1/configure' --prefix='/home/user/Desktop/eglibc_pristinebuild'
$ ./elf/ld-linux.so.2 /bin/ls /usr
bin games include lib lib64 local sbin share src
$ ./elf/ld-linux.so.2 /bin/true
$ ./elf/ld-linux.so.2 /bin/true Segmentation fault
That is entirely expected outcome.
GLIBC consists of ~200 separate files, which all must match exactly (must have come from the same build), because they use un-versioned binary interfaces between them.
When you run
./elf/ld-linux.so.2 /bin/true, you are using your own build of
ld-linux, but the system version of
libc.so.6, which did not come from your build.
You can confirm that that's in fact what is happening by using:
LD_DEBUG=files,libs ./elf/ld-linux.so.2 /bin/true
(this will prove that
/lib/libc.so.6 is being used).
You can fix this by using e.g.
./elf/ld-linux.so.2 --library-path . /bin/true
which will then use