[LAU] fltk linking problem

rob rob at rektau.ukfsn.org
Sat Oct 5 00:27:10 UTC 2013


On Fri, 4 Oct 2013 22:47:20 +0100
Will Godfrey <willgodfrey at musically.me.uk> wrote:

> Over the last few weeks I've been going through Yoshimi with a
> fine-tooth comb bug hunting, with some success (and much
> frustration). I'm doing this on my 'office' computer which is running
> debian testing on a 64bit AMD - fairly similar to my music machine.
> 
> During the week, I did an update via synaptic and now suddenly when I
> try to compile Yoshimi it fails to link, giving the message:
> 
> Linking CXX executable yoshimi
> /usr/bin/ld: /usr/lib/x86_64-linux-gnu/libfltk.a(Fl_x.o): undefined
> reference to symbol
> 'dlsym@@GLIBC_2.2.5' /lib/x86_64-linux-gnu/libdl.so.2: error adding
> symbols: DSO missing from command line collect2: error: ld returned 1
> exit status make[2]: *** [yoshimi] Error 1 make[1]: ***
> [CMakeFiles/yoshimi.dir/all] Error 2 make: *** [all] Error 2
> will at debian:~/yoshimi_20130926/src$ 
> 
> The investigating I've done suggests that something has changed in
> cmake so that yoshimi now needs a more 'correct' identification of
> fltk. I sort of gathered that cmake.txt was the place to look, but
> doing so tells me nothing. fltk is there but none of the information
> really makes sense to me.
> 
> 
> Although I don't like doing anything experimental on my music
> machine, I can do that for the time being as it is running an earlier
> version of the distro but presumably the new requirement will
> eventually hit the stable releases.
> 
> Can someone help me sort this out please.
> 
> P.S.
> A current version of ZynAddSubFX doesn't have this problem, but the
> build structure is now very different so I couldn't find any points
> of comparison.
> 
>  

Been getting the same problem with various builds. It's something to do
with linking libraries that has changed recently. Maybe a developer
can explain. What I've been doing is adding the missing link to the
build files. In your case adding -ldl to src/build/CMakeCache.txt,
after you have run cmake. I added it to both C_FLAGS and CXX_FLAGS

CMAKE_CXX_FLAGS:STRING="-ldl"
CMAKE_C_FLAGS:STRING="-ldl"

No guarantees but it worked for me.

rob



More information about the Linux-audio-user mailing list