[LAU] fltk linking problem

Brendan Jones brendan.jones.it at gmail.com
Sat Oct 5 08:49:24 UTC 2013


On 10/05/2013 02:27 AM, rob wrote:
> 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
>
> _______________________________________________
> Linux-audio-user mailing list
> Linux-audio-user at lists.linuxaudio.org
> http://lists.linuxaudio.org/listinfo/linux-audio-user
>

Outlined here: https://wiki.debian.org/ToolChain/DSOLinking

It's been this way in Fedora now for a while. A better explanation here:

http://fedoraproject.org/wiki/UnderstandingDSOLinkChange



More information about the Linux-audio-user mailing list