there is a problem when debug glibc compiled by myself with gdb
Paul Pluzhnikov
ppluzhnikov@gmail.com
Mon Aug 11 14:47:00 GMT 2014
On Mon, Aug 11, 2014 at 4:56 AM, Guoqiuping <guoqiuping@huawei.com> wrote:
> Would anyone can help me?
The first two commands in GDB that you'll want to use are "where" and
"info shared".
I expect that you'll discover that the crash is happening in the
dynamic loader (ld.so), and that your program loaded the system
libc.so.6, not the /home/hksee/glibc2111/.../libc.so.6 (which would
explain the crash -- mismatch between ld.so and libc.so.6 is not
allowed).
> ../glibc-2.11.1/configure --prefix=/home/hksee/glibc2111 CFLAGS "-O1 -g" = CPPFLAGS "-O1 -g"
> make
> make install
This puts libc.so.6 into /home/hksee/glibc2111/lib64 or some such.
> and then ran my test program in gdb as below, but Segmentation fault happened:
> gdb elf/ld.so
> (gdb) set exec-wrapper env LD_LIBRARY_PATH=~/glibc2111:~/glibc2111/elf
This tells the loader to look for libc.so.6 in glibc2111 or
glibc211/elf. The latter shouldn't exist at all, and the former should
not contain libc.so.6, so the setting is plain wrong.
Likely you want either:
LD_LIBRARY_PATH=/home/hksee/glibc2111/lib64
or
/home/hksee/glibc2111/elf/ld.so --library-path
/home/hksee/glibc2111/lib64 ~/tmp/testmalloc
--
Paul Pluzhnikov
More information about the Libc-help
mailing list