为什么我的所有软件包都拒绝安装?

为什么我的所有软件包都拒绝安装?

我在 16.04 上运行,并尝试安装各种开发包,即libglib2.0-dev我正在从事的项目。但这不是最近唯一一个这样做的包。本周安装 MySQL 很麻烦。我不断收到以下信息:

The following packages have unmet dependencies:
 libglib2.0-dev : Depends: libglib2.0-0 (= 2.48.0-1ubuntu4) but 2.48.1-1~ubuntu16.04.1 is to be installed
                  Depends: libglib2.0-bin (= 2.48.0-1ubuntu4)
E: Unable to correct problems, you have held broken packages.

这几乎与我的 MySQL 安装中发生的情况完全相同。我四处搜索并找到了一些建议aptitude installapt-get install -f但这些建议都没有奏效。我还做了尽职调查,apt-get updateapt-get dist-upgrade检查了主服务器在软件和更新的下载地址中。我尝试将它放在一袋格兰诺拉麦片中一个星期,但似乎没有任何效果。

知道发生了什么吗?我看到一些这样的帖子,但没有真正的解决方案。

根据建议,apt-cache policy alibglib2.0-dev libglib2.0-0 libglib2.0-bin 的输出为:

libglib2.0-dev:
  Installed: (none)
  Candidate: 2.48.0-1ubuntu4
  Version table:
     2.48.0-1ubuntu4 500
        500 http://archive.ubuntu.com/ubuntu xenial/main amd64 Packages
libglib2.0-0:
  Installed: 2.48.1-1~ubuntu16.04.1
  Candidate: 2.48.1-1~ubuntu16.04.1
  Version table:
 *** 2.48.1-1~ubuntu16.04.1 100
        100 /var/lib/dpkg/status
     2.48.0-1ubuntu4 500
        500 http://archive.ubuntu.com/ubuntu xenial/main amd64 Packages
libglib2.0-bin:
  Installed: 2.48.1-1~ubuntu16.04.1
  Candidate: 2.48.1-1~ubuntu16.04.1
  Version table:
 *** 2.48.1-1~ubuntu16.04.1 100
        100 /var/lib/dpkg/status
     2.48.0-1ubuntu4 500
        500 http://archive.ubuntu.com/ubuntu xenial/main amd64 Packages

答案1

未满足的依赖项仍保留在您的 sources.list 中。您需要刷新才能安装更多软件包,因此您可以这样做:

sudo rm /etc/apt/sources.list 

然后输入

sudo software-properties-gtk 

在此处输入图片描述 这将打开 software-properties-gtk 并自动创建一个 newsources.list。

然后将服务器更改为美国或您选择的任何其他服务器。您必须从新对话框中启用存储库才能创建新的 sources.list。

勾选所有框然后单击“恢复”,再单击“关闭”。

需要恢复默认存储库

 sudo apt-get update && sudo apt-get dist-upgrade -y

(最好在安装之前备份此文件,以便在发生此类情况时进行恢复)

相关内容