On Thu, 22 Nov 2012 23:05:15 +0200, Tanu Kaskinen <tanuk at iki.fi> wrote: > On Thu, 2012-11-22 at 20:38 +0200, Stefan Stefanov wrote: >> >http://thread.gmane.org/gmane.comp.audio.pulseaudio.general/11000 >> Exactly the same problem as mine. >> >> 1. Build of pulseaudio failed without libpthread-stubs.so with "no >> such file ..." >> 2. I noticed that in crux linux, sem_wait() resides in >> libpthread_stubs.so, and it is found through call to libpthread.so, >> but in my arch linux box there are no libpthread_stubs.so at all. So, >> I think that sem_wait() (in my arch linux box) resides in >> libpthread.so. >> Is it possible to upgrate libpthread.so? Which package I must upgrade? >> I cannot just delete libpthread-stubs.so. > > libpthread is provided by the libc implementation (eglibc on Debian). > libpthread-stubs is completely separate (developed by the XCB project, > apparently). I don't know how libpthread-stubs works, how it replaces > libpthread in the linking process, so I don't know what could cause > pulseaudio to be linked against libpthread-stubs, and I don't know what > you should do. libpthread-stubs uses weak symbols. If the process links against libpthread, then the libpthread symbols will be used. Otherwise, the unthreaded stubs will be used. Obviously, libpthread-stubs does not provide pthread_create(). However, on GNU/Linux, pthread-stubs is usually nothing but a pkg-config stub. (e)glibc provides weak pthread symbols natively in libc.so, so there is no need for pthread-stubs. Regardless, PulseAudio should NOT be linked to pthread-stubs since it uses pthread_create(). -- R?mi Denis-Courmont Sent from my collocated server