Public bug reported:
Hello,
while compiling our software in a Ubuntu jammy docker image I noticed a
backward incompatibility issue in glibc 2.34-0ubuntu3. Our build fails
with:
ld.lld: error: undefined symbol: pthread_yield
>>> referenced by tlibthrd.cxx:1546 (ptlib/unix/tlibthrd.cxx:1546)
>>> tlib.o:(PTimedMutex::~PTimedMutex()) in archive
>>> /builds/ExternalLibs/ptlib/2.10.9_1591084383/Applications_ubuntu2004_x64_cxx17_clang10/lib/libpt_d_s.a
>>> did you mean: pthread_yield@GLIBC_2.2.5
>>> defined in: /lib/x86_64-linux-gnu/libc.so.6
The libpt_d_s.a library was statically built on Ubuntu 20.04 and depends
on a lot of pthread symbols:
$ nm
/builds/ExternalLibs/ptlib/2.10.9_1591084383/Applications_ubuntu2004_x64_cxx17_clang10/lib/libpt_d_s.a|grep
-i " U pthread"|sort -u
U pthread_attr_destroy
U pthread_attr_init
U pthread_attr_setschedparam
U pthread_attr_setschedpolicy
U pthread_attr_setstacksize
...
U pthread_yield
Recompiling libpt against the current glibc will redirect from
pthread_yield to sched_yield, but nevertheless it would be nice if
existing libraries could be used for the transition phase.
The changes behavior is most likely due to
https://sourceware.org/git/?p=glibc.git;a=commit;h=c2fd60a5861efef48252f5cc7efc70e1d8a0da9a
Thanks,
Gregor
** Affects: glibc (Ubuntu)
Importance: Undecided
Status: New
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1949988
Title:
undefined symbol: pthread_yield
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/glibc/+bug/1949988/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs