Subject: Re: xmms: Error detected by libpthread: Invalid mutex.
To: Simon J. Gerraty <sjg@crufty.net>
From: Todd Vierling <tv@duh.org>
List: tech-pkg
Date: 06/02/2005 15:45:40
On Thu, 2 Jun 2005, Simon J. Gerraty wrote:

> I just finished re-building xmms and friends.
> When I run it I get:
>
> xmms: Error detected by libpthread: Invalid mutex.
> Detected by file "/big/builds/ab/netbsd-2-0-RELEASE/src/lib/libpthread/pthread_mutex.c", line 317, function "pthread_mutex_unlock".
> See pthread(3) for information.
>
> #0  0x48411fbb in kill () from /usr/lib/libc.so.12
> (gdb) bt
> #0  0x48411fbb in kill () from /usr/lib/libc.so.12
> #1  0x483046d5 in pthread__errorfunc () from /usr/lib/libpthread.so.0
> #2  0x48301949 in pthread_mutex_unlock () from /usr/lib/libpthread.so.0
> #3  0x482f1bc8 in g_get_home_dir () from /usr/pkg/lib/libglib.so.13
> #4  0x080800f5 in check_pposition ()
> #5  0x08056402 in ___start ()
>
> So perhaps IGNORE_RECOMMENDED isn't such a good idea? ;-(

Was glib originally built on 1.6 (i.e., with pth)?  If so, it and its
dependencies needs a rebuild.  (Generally, you cannot use dependencies built
for an older OS release, because they can have serious compile or link time
differences.)

If glib was built with 2.0, was it particularly old?  If so, this may
indicate that BUILDLINK_DEPENDS.glib needs a bump due to ABI breakage.

IGNORE_RECOMMENDED is useful for people who watch their rebuilds very
carefully; it is not very good as a general-purpose hammer.  If you use it,
you need to be mindful of possible ABI changes, including those from the
underlying OS.  (Perhaps this should be part of the loud yelling that pkgsrc
does at the end of a build if IGNORE_RECOMMENDED is set.)

-- 
-- Todd Vierling <tv@duh.org> <tv@pobox.com> <todd@vierling.name>