Attention beep-media-player users on FreeBSD 5.x

Miguel Mendez flynn at energyhq.es.eu.org
Mon Aug 30 01:54:49 PDT 2004


On Sun, 29 Aug 2004 18:20:27 -0700 (PDT)
Doug White <dwhite at gumbysoft.com> wrote:

Hi,

> > If bmp crashes upon start with a libpthread related error, modify
> > your/etc/libmap.conf and add this:
> 
> Complaining about spin locks not initialized, I bet?

The exact error is this:

flynn at scienide% beep-media-player
GThread-ERROR **: file gthread-posix.c: line 188 (): error 'Resource
deadlock avoided' during 'pthread_mutex_trylock'
aborting...
Abort (core dumped)

It happens pretty early when the program is about to load the skin.

> > # Might crash if used with libpthread
> > [beep-media-player]
> > libc_r.so.5		libc_r.so.5
> > libc_r.so		libc_r.so
> 
> This looks like an attempt to hack around the crossed-thread-libraries
> issue.  I know how to fix this with KDE, but I'm not as experienced

The problem was that I was mapping libc_r.so to libpthread.so. beepmp
crashes with libpthread, so I had to undo the mapping. However, it's
still true that people who linked beepmp with libpthread need to remap
the lib, e.g. 

[beep-media-player]
libpthread.so.1         libc_r.so.5
libpthread.so		libc_r.so

... and so on.

> with gnome.  Generally it involves rebuilding X and all ports in a
> particular order. With KDE you need to rebuild gmake fairly early
> since it encodes build options that get used for qt and dependants.

Interesting, I haven't experienced problems with KDE, at least not in
5.2, I'm waiting for 3.3 to come out to try it again (now on 5.3).
 
> There may be some information in the -current archives on this issue,
> particularly relating to gnome.

Thanks, I'll have a look.
 
> If you want to go hunting, run 'ldd' on the beepmp binary and make
> sure libc_r and libpthread don't both show up. If they do, you need to
> hunt through the dependant libraries to find the one depending on
> libc_r and rebuild it. objdump -x is useful here; look for the NEEDED
> entries in the dynamic section.

beepmp links with libgthread and libc_r. If libc_r is mapped to
libpthread the program aborts, it works fine with libc_r.

I'll have a look at the offending code when I have some spare time.

Cheers,
-- 
	Miguel Mendez <flynn at energyhq.es.eu.org>
	http://www.energyhq.es.eu.org
	PGP Key: 0xDC8514F1
	Note: All HTML and non-english mail goes to /dev/null
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-multimedia/attachments/20040830/121ca9a5/attachment.bin


More information about the freebsd-multimedia mailing list