18 Aug 12:54
Re: Bigloo on FreeBSD
From: <Manuel.Serrano <at> sophia.inria.fr>
Subject: Re: Bigloo on FreeBSD
Newsgroups: gmane.lisp.scheme.bigloo
Date: 2008-08-18 10:54:26 GMT
Expires: This article expires on 2008-09-01
Subject: Re: Bigloo on FreeBSD
Newsgroups: gmane.lisp.scheme.bigloo
Date: 2008-08-18 10:54:26 GMT
Expires: This article expires on 2008-09-01
Hello Karsten, Thank you very much for you mail. > After trying out Hop on my local OS X machine, I wanted to deploy it > on my FreeBSD server. As it turned out, it didn't work. > > I attached three patches that fix two major problems on FreeBSD and > improve threading. > > The first is trivial, the wrong header file is included in bglmixer.c. The latest version no longer includes bglmixer.c. There is actually no need to implement a direct mixer binding for using Gstreamer. This part has thus been removed from the gstreamer binding. > The second was very tricky. I got an error message that the library > init symbol could not be found in libbigloopth. As it turned out, > errors from dlsym() where not checked correctly. dlsym() returns NULL > on error, and then dlerror() can be used to retrieve an error message. > However, only dlerror() was checked for a non-NULL value, which fails > if there had been previous errors with dlsym() where the error message > was not handled. On FreeBSD, nsswitch uses a dummy function called > "_nss_cache_cycle_prevention_function" to prevent some forms of loops. > The code checking for this function ignores the error message, as it > expects the call to fail most of the time, and thus, the error popped > up in the first call to dlsym() in Bigloo. Sure. You are right. > The third patch is a minor (or major, depends on your point of view) > improvement for threading. On FreeBSD, you can choose between(Continue reading)
RSS Feed