[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [fluid-dev] Proposal: FluidSynth tester program
From: |
David Henningsson |
Subject: |
Re: [fluid-dev] Proposal: FluidSynth tester program |
Date: |
Mon, 30 Jul 2012 23:51:33 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:14.0) Gecko/20120714 Thunderbird/14.0 |
On 07/30/2012 07:41 PM, S. Christian Collins wrote:
On 07/28/2012 11:59 PM, David Henningsson wrote:
4) Run
sudo make install
...to install the new version. Once you have finished testing, run
sudo make uninstall
...to revert to the version that comes with Ubuntu.
On my system (Kubuntu 64-bit), this resulted in version 1.1.6 of the
FluidSynth binary using the 1.1.5 libraries.
Thanks for noticing!
I've tried to sort this stuff out, all this linking can be a bit hairy :-/
There seem to be two problems here:
1) We install things into /usr/local/lib64 by default, which is wrong
under Debian systems (see
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=612000 )
Workaround:
Run cmake with
"cmake -DLIB_SUFFIX= .."
Note the space between "=" and "..", and that
-DCMAKE_INSTALL_PREFIX=/usr is *not* specified.
This causes the library to be installed into /usr/local/lib.
2) The ld.so.cache is not updated
Workaround:
Run "sudo ldconfig" after "sudo make install" or "sudo make uninstall"
to update the cache.
After that, things seem to be in order:
* "which fluidsynth" returns /usr/local/bin
* "ldd /usr/local/bin/fluidsynth" returns "libfluidsynth.so.1 =>
/usr/local/lib/libfluidsynth.so.1"
As for fixing these issues long-term:
1) I'm not aware of the standards of when to use lib or lib64 for
non-Debian systems, but if it's important to install into lib64 in e g
Fedora, maybe we could detect whether our target is Debian based, and if
so, skip the LIB_SUFFIX?
2) I think cmake's make file should call ldconfig after
install/uninstall, so this seems to be a bug in cmake? I think "libtool
finish" does that.
I also had a problem with OSS support causing
make to abort, so I edited the *CMakeLists.txt* file in the source
directory by changing line 328 from:
set ( OSS_SUPPORT ${OSS_FOUND} )
...to:
set ( OSS_SUPPORT 0 )
...and then I was able to compile.
Hmm, it seems like we're missing an enable-oss (to go with enable-alsa,
enable-jack etc) to make it easy to leave out.
After testing, you will need to manually remove the library files you
copied to */usr/lib/x86_64-linux-gnu* and "sudo make uninstall" from the
FluidSynth build directory should remove the rest. I say "should"
because it actually leaves the */usr/lib64/libfluidsynth.so* and
*/usr/lib64/libfluidsynth.so.1* symlinks behind, so you will have to
remove those manually as well.
Yeah, as for cleaning the symlinks, I ran into that as well. Seems to be
another cmake bug?
--
David Henningsson, Canonical Ltd.
https://launchpad.net/~diwic
- [fluid-dev] Proposal: FluidSynth tester program, David Henningsson, 2012/07/11
- Re: [fluid-dev] Proposal: FluidSynth tester program, S. Christian Collins, 2012/07/11
- Re: [fluid-dev] Proposal: FluidSynth tester program, David Henningsson, 2012/07/16
- Re: [fluid-dev] Proposal: FluidSynth tester program, David Henningsson, 2012/07/24
- Re: [fluid-dev] Proposal: FluidSynth tester program, Aere Greenway, 2012/07/24
- Re: [fluid-dev] Proposal: FluidSynth tester program, Aere Greenway, 2012/07/31
- Re: [fluid-dev] Proposal: FluidSynth tester program, David Henningsson, 2012/07/31
- Re: [fluid-dev] Proposal: FluidSynth tester program, Aere Greenway, 2012/07/31
- Re: [fluid-dev] Proposal: FluidSynth tester program, S. Christian Collins, 2012/07/31
- Re: [fluid-dev] Proposal: FluidSynth tester program, Aere Greenway, 2012/07/31
- Re: [fluid-dev] Proposal: FluidSynth tester program, Aere Greenway, 2012/07/31