Sorry, I forgot to build with the -g option. But still as I'm stepping passed the 2 pthread_create() routines they finish executing before I can set a break. Why?
---Jan On Tue, Jul 12, 2011 at 1:02 PM, Jan Chludzinski <jan.chludzin...@gmail.com> wrote: >> Since cygwin1.dll is multithreaded, I routinely set breakpoints which >> are only hit in a thread. So, yes, gdb is supposed to be multi-thread >> aware. > > I have a 2 thread program. I set the break for main() and run (to main): > > (gdb) b main > Breakpoint 1 at 0x401191 > (gdb) r > Starting program: /home/John/projects/pthreads/test1/a.exe > [New thread 3680.0x13e8] > Error: dll starting at 0x76ff0000 not found. > Error: dll starting at 0x76590000 not found. > Error: dll starting at 0x76ff0000 not found. > Error: dll starting at 0x76c40000 not found. > [New thread 3680.0xc7c] > Breakpoint 1, 0x00401191 in main () > > Wait a few seconds and start to step: > > (gdb) n > Single stepping until exit from function main, > which has no line number information. > [New thread 3680.0x1410] > [New thread 3680.0x1540] > Counter value functionCount1: 1 > Counter value functionCount2: 2 > ... > Final count: 10 > Program exited normally. > > As you can see the threads have finished executing, along with the > main thread, *before * I ever get a chance to step to the first > pthread_create(). Let alone set a break in a thread. > > Why? > > Thanks, Jan > > On Tue, Jul 12, 2011 at 6:16 AM, Jan Chludzinski > <jan.chludzin...@gmail.com> wrote: >> I went to GNU.org to read about GDB and threads since I'm having >> trouble working with ptheads under GDB on Cygwin. I notice this on >> the GNU.org web site: >> >> "Warning: These facilities are not yet available on every GDB >> configuration where the operating system supports threads. If your GDB >> does not support threads, these commands have no effect. For example, >> a system without thread support shows no output from `info threads', >> and always rejects the thread command, like this:" >> >> What the level of support for threads with GDB under Cygwin? >> >> Switching between threads causes seg-faults. Also, I thought that >> while you're stepping through one thread, the other threads weren't >> running? Shouldn't I be able to set a breakpoint in a thread before >> pthread_create() is invoked? Doesn't appear to be the case? >> >> ---Jan >> > -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple