如何安装 libc6 版本 >= 2.29?

mer*_*114 23 package-management apt dpkg dependencies r

当我打字

sudo apt-get install r-base-core

我收到以下错误

The following packages have unmet dependencies. r-base-core : Depends: libc6 (>= 2.29) but 2.27-3ubuntu1 is to be installed

现在,据我所知,libc6 是一个重要的库,不应删除。

那么如何从当前版本(2.27)升级到任何>= 2.29的版本?

sin*_*ium 12

据我所知,libc6 2.29 是最新版本。它适用于 Ubuntu 19.04(链接)。

如果要安装libc6 amd64,打开这个链接下载,然后在终端打开下载文件夹,运行sudo dpkg -i libc6_2.29-0ubuntu2_amd64.deb

如果你想安装libc6 i386,你可以从这个链接下载它,然后在终端中打开下载文件夹并运行sudo dpkg -i libc6_2.29-0ubuntu2_i386.deb



编辑 06/01/2020:
到目前为止,libc6_2.29 不再存在。但是 libc6_2.30 和 lib6_2.31 可通过此链接获得(2.31 是 Ubuntu 20.04 的官方版本)。
如果您想下载与您的 Ubuntu 版本支持的官方版本不同的版本(即 18.04 为 2.27,Ubuntu 19.10 为 2.30 ...),请查看此链接
下载适合您的版本,然后打开下载文件夹并运行sudo dpkg -i <the_file_name>

  • 我认为这不安全!看看别人你在做什么!!您可以在 1 个系统上运行多个 glibc (libc) 版本。但是.. 请记住将它们放在不同的文件夹中。并使用 PatchELF 工具更改路径,或在构建过程中更改动态链接器路径。 (5认同)
  • @danger89 请发布更详细的答案,谢谢。或者您可以建议对我的答案进行修改以解决问题。 (3认同)
  • @XueQing 检查 06/01/2020 编辑中发布的链接。我检查了两个链接,它们都有效。 (2认同)
  • 不要这样做,它已经破坏了我的系统,甚至无法启动 https://askubuntu.com/questions/1314766/whole-system-is-broken-after-failed-libc6-upgrade-attempt (2认同)

小智 7

不要这样做。在这里,我将留下一张图片,说明您的软件包对libc6特定库编译的依赖程度!https://sites.google.com/view/dependency-netwok/

在那里您将看到一个星形网络,中心的节点(绿色)代表libc6。我建议两种可能的解决方案来解决您的问题:

1.添加兼容存储库

由于它是您想要的 r-base-core,因此请将存储库更改为与您的特定发行版兼容的存储库。

例如:deb https://cloud.r-project.org/bin/linux/ubuntu bionic-cran35/

在 /etc/apt/sources.list 文件中。通过使用,您将被自动重定向到附近的 CRAN 镜像。有关 CRAN 镜像的当前列表,请参阅https://cran.r-project.org/mirrors.html 。

sudo apt-get update
sudo apt-get install r-base
sudo apt-get install r-recommended
Run Code Online (Sandbox Code Playgroud)

2. 升级

另一个解决方案是将您的整个发行版升级到更新版本并与您想要的兼容。