On Sun, Nov 12, 2006 at 07:59:01PM +0100, Stefan Sperling wrote:
> Hello,
>
> I am updating audio/beast to version 0.7.0.
>
> At first it didn't seem to work, it was segfaulting like crazy when run.
> With the friendly help of upstream developers I was able
> to track this down to a shared library problem.
>
> The port sets LDFLAGS="-L/usr/local/lib" in the environment of the
> configure script, because otherwise the configure script fails to
> find required libraries, like libmad, for example.
>
> It seems that this causes the beast-0.7.0 binaries to be linked
> with beast-0.6.x libraries installed in /usr/local/lib.
> Deinstalling beast-0.6.x before compiling 0.7.0 solves the issue,
> the application runs just fine. So a clean upgrade requires
> the previous version of the port to be removed *before* the new
> version is built.
>
> Is there any way I can make sure that the previous version of the port
> is not installed while building the new version? I've tried setting
> CONFLICTS to beast-[0-6]*, but CONFLICTS is not checked until install
> time. I need the check to be performed before anything else.
>
> Or is the rather ugly LDFLAGS hack to blame, i.e. should I try to find
> a better way to make configure pick up required libraries?
The better way is to fix the port build to not pick up the wrong
libraries, i.e. by using -L. -L${LOCALBASE}/lib to pick up the local
versions first. Note also that you shouldn't be using /usr/local/lib.
Kris
pgpcEeIi3QFEe.pgp
Description: PGP signature