On Mon, Nov 21, 2011 at 06:11:48PM -0800, Justin Lindberg wrote: > The problem is that the shared object library > > /usr/local/lib/libgthread-2.0.so.2800.0 > or > /usr/local/lib/libgthread-2.0.so.2992.0 > as it is by now in -CURRENT > > tries to execute function calls that are implemented in > > /usr/lib/libpthread.so.13.1 > > These calls will continue to segfault unless libgthread-2.0 is linked > with "-lpthread", or equivalently, "--library=pthread"
Again, *NO*. Link your executable with -pthread and stop trying to add -lpthread to all libraries, that is not how it works. > If /usr/lib/libpthread.so.13.1 doesn't show up when you run ldd, > then libgthread-2.0 was not linked properly. Wrong, libpthread is never recorded in so libs when using -pthread and linking with -lpthread is not the proper way on OpenBSD for a whole bunch of reasons. For the last time, you have to link your executable with -pthread. > $ ldd /usr/local/lib/libgthread-2.0.so.2992.0 > /usr/local/lib/libgthread-2.0.so.2992.0: > Start End Type Open Ref GrpRef Name > 0000000203a10000 0000000203e15000 dlib 1 0 0 > /usr/local/lib/libgthread-2.0.so.2992.0 > 000000020c1df000 000000020c6d2000 rlib 0 1 0 > /usr/local/lib/libglib-2.0.so.2992.0 > 000000020e384000 000000020e7c1000 rlib 0 2 0 > /usr/local/lib/libpcre.so.2.5 > 0000000205a3b000 0000000205e45000 rlib 0 2 0 > /usr/local/lib/libintl.so.5.0 > 000000020f7c6000 000000020fcc1000 rlib 0 2 0 > /usr/local/lib/libiconv.so.6.0 > > > > -- Antoine