Problem during dlopen()
Willem Jan Withagen
wjw at digiware.nl
Tue Jul 5 12:00:36 UTC 2016
On 5-7-2016 13:45, Pietro Cerutti wrote:
> On 2016-07-05 13:13, Willem Jan Withagen wrote:
>> Hi,
>>
>> I'm banging my head agains the wall because I cannot seem to get this
>> working.
>>
>> The problem is due to changing from automake to cmake building.
>>
>> But all my dlopens start failing with something like:
>> load failed dlopen(build/lib/compressor/libceph_snappy.so) or
>> dlopen(build/lib/libceph_snappy.so): build/lib/libceph_snappy.so:
>> Undefined symbol "_ZN4ceph6buffer4list8iterator7advanceEl"
>>
>> If do a lookup for the name:
>> nm build/lib/libceph_snappy.so |grep ceph6buffer4list8iterator7advanceEl
>>
>> if give me:
>> U _ZN4ceph6buffer4list8iterator7advanceEl
>>
>> The parent/calling executable however has:
>> 0000000000513de0 T _ZN4ceph6buffer4list8iterator7advanceEl
>>
>> Clearly dlopen is not able to match these 2 and succeed.
>>
>> Question:
>> So on which part of the building is what switch missing.
>
> Wild guess: -Wl,-E linking the executable.
>
And bonus point for Pietro.
I did have that switch, but I had it on the lib that needed to be loaded.
So: Too many switches/options/flags in Cmake for my taste.
--WjW
More information about the freebsd-hackers
mailing list