Re: [LAU] fltk linking problem

From: Brendan Jones <brendan.jones.it@email-addr-hidden>
Date: Sat Oct 05 2013 - 11:49:24 EEST

On 10/05/2013 02:27 AM, rob wrote:
> On Fri, 4 Oct 2013 22:47:20 +0100
> Will Godfrey <willgodfrey@email-addr-hidden> 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@email-addr-hidden:~/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@email-addr-hidden
> 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

_______________________________________________
Linux-audio-user mailing list
Linux-audio-user@email-addr-hidden
http://lists.linuxaudio.org/listinfo/linux-audio-user
Received on Sat Oct 5 20:15:01 2013

This archive was generated by hypermail 2.1.8 : Sat Oct 05 2013 - 20:15:01 EEST