I'm trying to port a multithreaded app of mine to Linux, and I'm having major problems with pthreads. (Un?)fortunately, they are very fundamental problems. Basically, calling pthread_create causes a SIGSEGV every single time. it's usually a couple functions deep on the stack inside the call to pthread_create, like pthread_getconcurrency (usually) or pthread_yield (less often).
i'm compiling all my objects with:
g++ -g -pthread -Wall -D_THREAD_SAFE -D_REENTRANT -c foo.cpp
and linking everything with
g++ -pthread -lrt -lz -luuid foo.o -o output.a
is there anything else i need to do?? i'm starting to pull my hair out a little bit, i'm sure i'm missing some flag or something that i'm supposed to specify. i'm using whatever comes with mandrake 9.2, i just pulled it down off the net a week ago or so.