From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 8621 invoked by alias); 25 Feb 2005 13:25:24 -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 8533 invoked from network); 25 Feb 2005 13:25:12 -0000 Received: from unknown (HELO nimbus.ott.qnx.com) (209.226.137.76) by sourceware.org with SMTP; 25 Feb 2005 13:25:12 -0000 Received: from [10.12.1.181] (MOJOJOJO [10.12.1.181]) by nimbus.ott.qnx.com with SMTP (Microsoft Exchange Internet Mail Service Version 5.5.2653.13) id F1F64XAM; Fri, 25 Feb 2005 08:25:11 -0500 Message-ID: <421F2714.40103@qnx.com> Date: Fri, 25 Feb 2005 17:45:00 -0000 From: Kris Warkentin User-Agent: Mozilla Thunderbird 1.0 (Windows/20041206) MIME-Version: 1.0 To: Hareesh Nagarajan CC: GDB Subject: Re: Unable to find dynamic linker breakpoint function. References: <421EB94D.3060200@cs.uic.edu> In-Reply-To: <421EB94D.3060200@cs.uic.edu> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-SW-Source: 2005-02/txt/msg00162.txt.bz2 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. 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). Possibly the weird break is due to the wrong libc as above though. cheers, Kris Hareesh Nagarajan wrote: >Hi, > >I know this question has been posted before, but I am posting this again > >because I don't know how to fix this warning; > >1. warning: Unable to find dynamic linker breakpoint function. >GDB will be unable to debug shared library initializers >and track explicitly loaded dynamic code. > >And then, how must I fix this problem; > >2. 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). > >My gdb run appears below. > >Thanks, > >Hareesh > >PS: I'm running GDB 6.0. libstdc++ and glibc have been compiled with >DEBUG information. > >(gdb) r >Starting program: /home/hareesh/new >warning: Unable to find dynamic linker breakpoint function. >GDB will be unable to debug shared library initializers >and track explicitly loaded dynamic code. >l >Program exited normally. >(gdb) l >1 #include >2 #include >3 using namespace std; >4 >5 int main(void) >6 { >7 string x("heloo"); >8 cout << x.at(2); >9 } >(gdb) b 8 >Breakpoint 1 at 0x80488a6: file new.cc, line 8. >(gdb) r >Starting program: /home/hareesh/new >warning: Unable to find dynamic linker breakpoint function. >GDB will be unable to debug shared library initializers >and track explicitly loaded dynamic code. > >Breakpoint 1, main () at new.cc:8 >8 cout << x.at(2); >(gdb) inspect x >$1 = {static npos = 4294967295, _M_dataplus = {> = {data fields>}, _M_p = 0x804a05c "heloo"}, > static _S_empty_rep_storage = {0, 0, 0, 0}} >(gdb) inspect x.at(2) > >Breakpoint 1, main () at new.cc:8 >8 cout << x.at(2); >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). >(gdb) > >