libc6-amd64 依赖问题

libc6-amd64 依赖问题

我正在尝试从 AMD 网站手动安装 fglrx,但是它一直抱怨缺少依赖项“libc6-amd64”。

当我通过 gdebi 运行 fglrx 包时,我收到以下消息:

This package is uninstallable
Dependency is not satisfiable: libc6-amd64 (>= 2.9)

即使已经安装...

dpkg -l | grep libc6
ii  libc6:amd64                                           2.19-0ubuntu6                                       amd64        Embedded GNU C Library: Shared libraries
ii  libc6:i386                                            2.19-0ubuntu6                                       i386         Embedded GNU C Library: Shared libraries
ii  libc6-amd64                                           2.19-0ubuntu6                                       i386         Embedded GNU C Library: 64bit Shared libraries for AMD64
ii  libc6-dbg:amd64                                       2.19-0ubuntu6                                       amd64        Embedded GNU C Library: detached debugging symbols
ii  libc6-dev:amd64                                       2.19-0ubuntu6                                       amd64        Embedded GNU C Library: Development Libraries and Header Files
ii  libc6-i386                                            2.19-0ubuntu6                                       amd64        Embedded GNU C Library: 32-bit shared libraries for AMD64

最后,我设法使用以下命令安装 fglrx,该命令忽略所有依赖项:

sudo dpkg -i --force-all fglrx*.deb

虽然我想知道是否有人知道如何解决这个问题,因为在 apt 中我现在收到这个错误:

apt-get upgrade
Reading package lists... Done
Building dependency tree       
Reading state information... Done
You might want to run 'apt-get -f install' to correct these.
The following packages have unmet dependencies:
 fglrx : Depends: libc6-amd64 (>= 2.9) but it is not installable
 fglrx-amdcccle : Depends: libc6-amd64 (>= 2.3) but it is not installable
E: Unmet dependencies. Try using -f.

答案1

我在 google 上搜索时找到了一个解决方法。我重新编译了 libc6 及其其他软件包。它修复了 Amd 的二进制 Ubuntu 软件包未满足的依赖关系问题。

首先,在 Ubuntu 软件中心添加源代码存储库(https://help.ubuntu.com/community/Repositories/Ubuntu

我重建了 libc6-amd64 Ubuntu 包:

sudo apt-get update && sudo apt-get --compile source libc6-amd64

我安装了所有 eglibc(嵌入式 GNU C 库)包,但存在覆盖问题。

必须在您给出“apt-get --compile source libc6-amd64”命令的目录下创建软件包:

sudo dpkg --force-all -i *.deb

然后,输入相同的命令来安装你的 Amd Ubuntu 包:

sudo dpkg -i --force-all fglrx*.deb

它必须安装你的 Amd Ubuntu 软件包。

如果您尝试重新安装 Amd Ubuntu 软件包,则必须再次重新安装 libc6 和 libc6-amd64 (eglibc) 软件包。

这是我解决依赖问题的简单解决方案。

答案2

有两种方法可以解决问题:

a) 修补生成的软件包https://gist.github.com/dz0ny/b9e3fce83d0c52e16857
b) 生成虚拟包 libc6-amd64,其中列出 libc6:amd64 作为依赖项

相关内容