libc6 库的版本方案从 focal 更改为 jammy

libc6 库的版本方案从 focal 更改为 jammy

大家好,Ubuntu 社区,

我注意到 libc6 库的版本方案从 focal 变为 Jammy(即在 jammy libc6 包中,我观察到库名称上的次要版本已被删除,只有主要版本存在,而 focal libc6 包中并非如此)。我可以知道这个决定背后的原因吗,这是 Ubuntu 为其所有其他库包采取的路径(版本方案)吗?如果可能的话,是否有任何方法可以恢复旧的约定(libname 主版本.次要版本),例如安装某些包或更改设置

例子

焦点上的 libdl 名称:/usr/x86_64-linux-gnux32/lib64/libdl-2.31.so

jammy 上的 libdl 名称:/usr/x86_64-linux-gnux32/lib64/libdl.so.2

关联:

https://packages.ubuntu.com/focal/all/libc6-amd64-x32-cross/filelist

https://packages.ubuntu.com/jammy/all/libc6-amd64-x32-cross/filelist

提前致谢

答案1

此更改来自上游 glibc,请参阅v2.34 公告

  • 以前,glibc 将其各种共享对象安装在版本化的文件名下,例如 libc-2.33.so。ABI soname(例如 libc.so.6)以符号链接的形式提供。从 glibc 2.34 开始,共享对象直接安装在其 ABI soname 下,而无需符号链接。这提高了与分发包管理器的兼容性,分发包管理器会在软件包升级或降级过程中删除已删除的文件。

我认为这是不可配置的,glibc 或 Ubuntu 也不会恢复更改。但是,如果这确实导致了一些问题,您可以尝试提交错误报告。

相关内容