fluid-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [fluid-dev] New debian/ubuntu package available for testing


From: Pedro Lopez-Cabanillas
Subject: Re: [fluid-dev] New debian/ubuntu package available for testing
Date: Sun, 10 May 2009 21:14:08 +0200
User-agent: KMail/1.9.6 (enterprise 20070904.708012)

On Sunday, May 10, 2009, address@hidden wrote:
> Quoting David Henningsson <address@hidden>:
> > Bernat Arlandis i Mañó skrev:
> >> but building the package gives these warnings:
> >>
> >> dpkg-shlibdeps: warning: dependency on libpthread.so.0 could be avoided
> >> if "debian/fluidsynth/usr/bin/fluidsynth" were not uselessly linked
> >> against it (they use none of its symbols).
> >
> > Since "ldd fluidsynth" displays a dependency on libpthread this issue
> > seems to be inherited from upstream. Is this a problem that can be fixed
> > by editing the autotools files? Josh, perhaps you know how to fix that?
>
> I lack some knowledge in the area of shared libraries.  I notice that
> when running ldd on the fluidsynth executable, it comes up with a
> large list of dependencies, which aren't actually used in the
> fluidsynth application itself, but are instead dependencies of
> libfluidsynth.  Perhaps ldd is recursively listing the dependencies
> though?

Yes, it is. But you can give -u and -r in the command line to avoid indirect 
dependencies. This is what I got here:

$ ldd -u -r /usr/bin/fluidsynth
Unused direct dependencies:
        /lib/libreadline.so.5
        /lib/libncurses.so.5
        /usr/local/lib/libjack.so.0
        /usr/lib/libasound.so.2
        /lib/libm.so.6
        /lib/libdl.so.2
        /lib/librt.so.1
        /usr/lib/libpulse-simple.so.0
        /usr/lib/libpulse.so.0
        /lib/libpthread.so.0

(a lot of unused dependencies!)

> The src/Makefile.am is using "fluidsynth_LDADD = libfluidsynth.la" to
> link in the libfluidsynth library.  This seems correct and I'm not
> sure where any other unnecessary linkage is occurring.

IMO, the easiest way to fix this would be to add a flag for the linker [1], 
one of these lines in src/Makefile.am:

        fluidsynth_LDFLAGS = -Wl,--as-needed
or
        AM_LDFLAGS = -Wl,--as-needed

or set this environment variable before executing configure: 

        LDFLAGS=-Wl,--as-needed 

Can you test for unwanted side effects?

Regards,
Pedro

[1] http://www.gentoo.org/proj/en/qa/asneeded.xml




reply via email to

[Prev in Thread] Current Thread [Next in Thread]