Public bug reported:
Binary package hint: libc6-dbg
On Ubuntu 8.10, gdb and valgrind cannot show line numbers and
filenames for functions in glibc for 32 bit programs on 64 bit systems,
even if libc6-dbg is installed.
You can see this by setting a breakpoint on some function
in glibc, running, and then getting a backtrace.
Here's a script I wrote to demonstrate the problem. It assumes
you have valgrind and libc6-dbg installed. (You don't need
valgrind to be affected by the problem, but that's where I
ran into it first.) On a good system, it outputs
"Worked! No bug found".
---- snip ----
#!/bin/sh
set -e
set -x
case `uname -m` in
x86_64) ;;
*) echo "This test is for x86_64 machines"; exit 1;;
esac
cat > leak.c <<_EOF_
#include <stdio.h>
#include <malloc.h>
int main(int argc, char **argv)
{
struct addrinfo *ai;
int err = getaddrinfo(NULL, "http", NULL, &ai);
printf("err %d, ai %p\n", err, ai);
}
_EOF_
for size in 64 32
do
gcc -g -m$size leak.c -o leak$size
valgrind --leak-check=full ./leak$size > leak$size.log 2>&1 || true
if ! grep -q "getaddrinfo.c:" leak$size.log
then
echo "No symbolic backtrace in $size bits; do you need to
install libc6-dbg?"
exit 1
fi
done
echo "Worked! No bug found."
---- snip ----
** Affects: glibc (Ubuntu)
Importance: Undecided
Status: New
--
libc6-dbg has broken 32 bit symbols on x86_64
https://bugs.launchpad.net/bugs/341532
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs