It seems starting in ubuntu 22.04 the execute bit is no longer set on /lib/x86_64-linux-gnu/libc.so.6. This throws off some scripts and methods to find out the glibc version being used. Could that bit please be added?
Asked
Active
Viewed 659 times
1 Answers
1
$ file /lib/x86_64-linux-gnu/libc.so.6
/lib/x86_64-linux-gnu/libc.so.6: ELF 64-bit LSB shared object, x86-64,
version 1 (GNU/Linux), dynamically linked,
interpreter /lib64/ld-linux-x86-64.so.2,
BuildID[sha1]=69389d485a9793dbe873f0ea2c93e02efaa9aa3d,
for GNU/Linux 3.2.0, stripped
find out the glibc version being used
These both show the version:
ldd --version
ldd `which ls` | grep libc
but if you really want it exectable:
sudo chmod 744 /lib/x86_64-linux-gnu/libc.so.6
and it will show:
GNU C Library (Ubuntu GLIBC 2.35-0ubuntu3.1) stable release version 2.35.
Copyright (C) 2022 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
Compiled by GNU CC version 11.2.0.
libc ABIs: UNIQUE IFUNC ABSOLUTE
For bug reporting instructions, please see:
<https://bugs.launchpad.net/ubuntu/+source/glibc/+bugs>.
I would suggest to search bugreports or file a bugreport to find out why this is done (I did not find a reason yet but assume it does not need to be executable and as such was deemed wrong as there are better methods than to assume /lib/x86_64-linux-gnu/libc.so.6
exists (like ldd
is independent of a version)).

Rinzwind
- 299,756
-
Good idea, will file a bug report. There are alternatives as you describe but LSF for instance determines glibc version via this execute bit ... – rei Sep 08 '22 at 08:18