From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 26431 invoked by alias); 25 Feb 2005 19:37:09 -0000 Mailing-List: contact gdb-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sources.redhat.com Received: (qmail 26360 invoked from network); 25 Feb 2005 19:37:00 -0000 Received: from unknown (HELO smtp801.mail.sc5.yahoo.com) (66.163.168.180) by sourceware.org with SMTP; 25 Feb 2005 19:37:00 -0000 Received: from unknown (HELO ?172.16.1.37?) (kph1982@sbcglobal.net@68.252.251.116 with plain) by smtp801.mail.sc5.yahoo.com with SMTP; 25 Feb 2005 19:36:59 -0000 Message-ID: <421F7E59.7020400@cs.uic.edu> Date: Fri, 25 Feb 2005 20:20:00 -0000 From: Hareesh Nagarajan User-Agent: Mozilla Thunderbird 1.0 (X11/20041206) MIME-Version: 1.0 To: GDB CC: Kris Warkentin Subject: Re: Unable to find dynamic linker breakpoint function. References: <421EB94D.3060200@cs.uic.edu> <421F2714.40103@qnx.com> In-Reply-To: <421F2714.40103@qnx.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-SW-Source: 2005-02/txt/msg00164.txt.bz2 Kris Warkentin wrote: > I think you're seeing two different problems here but they may have the > same root. Gdb may be finding the wrong glibc - that is, not the same > one that the program is using. Try 'info shared' to see what gdb is using. I don't know how 'info shared' helps, but this might: hareesh: hareesh/ $ ldd new linux-gate.so.1 => (0xffffe000) libstdc++.so.5 => /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/libstdc++.so.5 (0xb7f0d000) libm.so.6 => /lib/libm.so.6 (0xb7eeb000) libgcc_s.so.1 => /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/libgcc_s.so.1 (0xb7ee2000) libc.so.6 => /lib/libc.so.6 (0xb7dce000) /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0xb7fea000) I have compiled libstdc++ with '-g -fomit-frame-pointer'. Additionally, I use Gentoo Linux and that this problem of mine affects debugging member functions of C++ STL containers. So how could the wrong glibc be the problem? > As far as the stop goes, string::at(2) may have been inlined in which > case the breakpoint may well be in that code. You might want to look at > the assembly. Try breaking on seven, nexting to 8 and see if you get > the same result. Or clear the breakpoint before calling x.at(2). I did that. But that doesn't change anything as can be seen below. Breakpoint 1, main () at new.cc:7 7 string x("heloo"); (gdb) n 8 cout << x.at(2); (gdb) inspect x.at(2) Breakpoint 1, main () at new.cc:7 7 string x("heloo"); The program being debugged stopped while in a function called from GDB. When the function (std::string::at(unsigned) const) is done executing, GDB will silently stop (instead of continuing to evaluate the expression containing the function call). I have no idea how to fix this problem and it is frankly driving me mad! Thanks, Hareesh