>> I'd need help with the following issue with apitrace,
which failed
>> the mass rebuild with:
>>
>> apitrace-9d42f667e2a36a6624d92b9bd697de097cc4e619/wrappers/dlsym.cpp:70:
>> undefined reference to `__libc_dlopen_mode'
>> apitrace-9d42f667e2a36a6624d92b9bd697de097cc4e619/wrappers/dlsym.cpp:72:
>> undefined reference to `__libc_dlsym'
>>
>> The code triggering this is below. Have these symbols disappeared
>> from libc resp is there any alternative?
>
> I've raised this upstream but so far no activity [1]. I'm not really
> knowledgeable enough in this area to judge the best way to fix this.
> Is anyone able to help with this? Otherwise I'll have to
> orphain/retire apitrace for F35+.
According to the comments in
https://github.com/apitrace/apitrace.git
file wrappers/dlsym.cpp ,
the purpose is "to obtain the true dlsym" by explicit lookup in
libdl.so.2, which is a library
that no longer exists in glibc-2.34, having been combined into libc.so
itself.
The only legitimate way to find "the true dlsym" is to trust
dl_iterate_phdr (/usr/include/link.h)
and call it, dig through all the Dynamic sections to find all the
symbols named 'dlsym',
then choose the one you want: perhaps by being defined in a file whose
DT_SONAME is "libc.so"
and having symbol version GLIBC_2.2.5 .
Because such code has not been contributed, then apitrace should be
orphaned/retired in F35+.
Thanks for your reply - I've forwarded your comment upstream. The
package will be retired in ca 5 weeks if no solution presents itself
until then.
Sandro