There was a change in glibc somewhere between 2.3.2-57 and 2.3.2-66 that
adds /usr/lib/librt.so.1 to glibc-devel. The file is just a symlink to
librt.so. This change seems wrong to me, and its causing breakage with
TLS.
I have an app not linking to librt, but it dlopens a library that links
to librt.so.1. The app gets the tls libc at /lib/tls/libc.so.6, but when
resolving the librt.so.1 DT_NEEDED it first looks in the system library,
finding /usr/lib/librt.so.1. However, following this symlink gets you
/lib/librt.so.1 which is the non-TLS version of librt. This means we
have mismatched librt and libc versions, causing:
/usr/lib/librt.so.1: symbol __librt_disable_asynccancel, version
GLIBC_PRIVATE not defined in file libc.so.6 with link time reference
Having the soname librt in /usr/lib just seems wrong to me. What was the
reason for introducing it?
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Alexander Larsson Red Hat, Inc
alexl(a)redhat.com alla(a)lysator.liu.se
He's an obese moralistic sorceror with a passion for fast cars. She's a
strong-willed goth cab driver fleeing from a Satanic cult. They fight crime!