I am trying to set a breakpoint in linux in gdb for a program creating threads. I would like to set a breakpoint on thread creation, but unfortunately pthread_create<
OK, I'm going to post two answers, because I'm not sure if I understand your question.
First: pthread_create is in a shared library, and gdb knows how to handle that. If you just say "break pthread_create", it should "just work".
You shouldn't need to know this, but the way it should work is that gdb will find a symbol "pthread_create@plt", which is a stub that leads into the dynamic loader, and will eventually be replaced by a jump to the appropriate shared library function. We will set a breakpoint there, and gdb will automatically deal with the dynamic loader until eventually reaching (and stopping at) the correct shared library function.
Now in case that doesn't solve it for you, on to my second answer...