/usr/lib64/libm.so.6 not from libc6-2.36-559.x86_64.rpm

Hi!

My understanding of Clearlinux is that there is a set of rpm packages forming a bundle, which then gets installed into the system. Now while debugging a problem I found that /usr/lib64/libm.so.6 as of version 38050 is causing unexpected floating-point exceptions in a LISP compiler I am debugging, while the version in https://cdn.download.clearlinux.org/releases/38050/clear/x86_64/os/Packages/libc6-2.36-559.x86_64.rpm does not. This came as a surprise to me since my expectation was that /usr/lib64/libm.so.6 comes through the os-core bundle, which itself is built from the library in https://cdn.download.clearlinux.org/releases/38050/clear/x86_64/os/Packages/libc6-2.36-559.x86_64.rpm. But since the file in that package is totally different from the one in the installed system apparently my understanding of the mechanism is wrong or at least has some gaps. Could someone explain to me how it comes that the file in the installed system is different from the file in that package?

Robert

Meanwhile, I found the root cause of the problem with the LISP compiler: The FTZ patch in gcc introduced with version 12.2.0-1713 is causing some failing test cases relying on denormal numbers. In case you are interested you can find more details at Bug #2002810 “tests incompatible with FTZ and DAZ” : Bugs : SBCL
Nevertheless, I would still be interested to understand where the glibc libraries in an installed system are coming from, given that they are different from the libraries packaged in the corresponding libc6 package.