Tutorial on debugging with an alternate loader

Daniel De La Zerda ddelazerda007@yahoo.com
Thu Apr 16 16:32:00 GMT 2009


>Hi Daniel, I wrote wrote a tutorial on this:

>http://sources.redhat.com/glibc/wiki/Debugging/Loader_Debugging#Debugging_With_an_Alternate_Loader
>
>Ryan

I finally am in need to debug my glibc with an alternate loader and I am stuck where you run the script to start gdb with the alternate loader. This is the script I'm using to run gdb with the alternate loader:

#!/bin/bash

GLIBC="/home/devel/src/rpm/BUILD/glibc-2.4-copy/my-glibc-build"

# We need to make sure that gdb is linked against the standalone glibc so that
# it picks up the correct nptl_db/libthread_db.so. So that means invoking gdb
# using the standalone glibc's linker.

${GLIBC}/elf/ld-linux-x86-64.so.2 --library-path \
${GLIBC}:\
${GLIBC}/math:\
${GLIBC}/elf:\
${GLIBC}/dlfcn:\
${GLIBC}/nss:\
${GLIBC}/nis:\
${GLIBC}/rt:\
${GLIBC}/resolv:\
${GLIBC}/crypt:\
${GLIBC}/nptl:\
${GLIBC}/nptl_db:\
gdb -x test.gdb -cd=/home/devel/src/rpm/BUILD/glibc-2.4-copy ${GLIBC}/elf/ld-linux-x86-64.so.2

As you can see it looks very much like the one in your tutorial and here is the test.gdb with the commands:

set environment C -E -x c-header
break _dl_main_dispatch
run --library-path
/home/devel/src/rpm/BUILD/glibc-2.4-copy/my-glibc-build:\
/home/devel/src/rpm/BUILD/glibc-2.4-copy/my-glibc-build/nptl:\
/home/devel/src/rpm/BUILD/glibc-2.4-copy/my-glibc-build/math:\
/home/devel/src/rpm/BUILD/glibc-2.4-copy/my-glibc-build/elf:\
/home/devel/src/rpm/BUILD/glibc-2.4-copy/my-glibc-build/dlfcn:\
/home/devel/src/rpm/BUILD/glibc-2.4-copy/my-glibc-build/nss:\
/home/devel/src/rpm/BUILD/glibc-2.4-copy/my-glibc-build/nis:\
/home/devel/src/rpm/BUILD/glibc-2.4-copy/my-glibc-build/rt:\
/home/devel/src/rpm/BUILD/glibc-2.4-copy/my-glibc-build/resolv:\
/home/devel/src/rpm/BUILD/glibc-2.4-copy/my-glibc-build/crypt:\
/home/devel/src/rpm/BUILD/glibc-2.4-copy/my-glibc-build/nptl:\
/home/devel/src/rpm/BUILD/glibc-2.4-copy/my-glibc-build/nptl_db \
/home/devel/src/rpm/BUILD/test/minicond_clock_test

minicond_clock_test is the executable that I want to debug.

When I run the bash script above I get the following error:

"-x: error while loading shared libraries: -x: cannot open shared object file: No such file or directory"

This is strange because I did an "ls" on every path of the bash script and their are all valid paths. I don't know what else could it be. If you need more information, I will be glad to provide. 

Thank you for your time,

Daniel


      



More information about the Libc-help mailing list