4 ms·
> All shared libraries depend on the specific glibc version to load them into memory to be able to use that specific glibc version as their C library That's cu
by adev_ 2mo ago
> All shared libraries depend on the specific glibc version to load them into memory to be able to use that specific glibc version as their C library
That's currently the real core of the problem.
The loader (and libdl) need to be decoupled from the glibc itself under Linux.
Without that, any attempt to ship static binaries (or any binary with a different Libc) will be a source of perpetual pain.
nss plugins and its associated pain (sssd and avahi) are an other examples of that.
- inigyou 2mo agolibdl is the loader FWIW. It's all one big glibc codebase.
- adev_ 2mo agoWhat we name the loader is typically ld.so, more precisely /lib/ld-linux-x86-64.so.2 under x86_64. But I do agree with you, the glibc is all one giant codebase shipped in one giant blob, dispatch under several names. Even libdl.so is barely more than a wrapper and some glue around the libc.so itself.