未满足的依赖关系 unity-control-center

未满足的依赖关系 unity-control-center

我正勇敢地尝试进入“apt 世界”,今晚在克隆上测试从 16.04 升级到 19.04 时出现了这些错误(这......嗯......很复杂......):

The following packages have unmet dependencies:
 indicator-bluetooth : Depends: unity-control-center but it is not going to be installed or
                                gnome-control-center but it is not going to be installed or
                                ubuntu-system-settings but it is not installable
 libdouble-conversion1v5 : Conflicts: libdouble-conversion1 but 3.1.0-2 is to be installed
                           Breaks: libdouble-conversion1 but 3.1.0-2 is to be installed
 libqt5dbus5 : Depends: qtbase-abi-5-5-1
 libqt5network5 : Depends: qtbase-abi-5-5-1
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.

有人知道如何解决这些错误或我可以提供哪些其他信息来帮助解决这些错误吗?

16.04 到 19.04 的升级是通过脚本进行的,因此如果这有帮助的话,我可以预先安装软件包。我已经重新克隆了 16.04 并运行了五次脚本来解决其他错误,现在我几乎可以看到隧道尽头的曙光了。


回复评论

目前仅安装并通过升级进行转换的 Unity Desktop。升级成功后,我计划安装 Gnome Desktop 和可能的 Wayland。

我发现升级之前就存在一个问题:

$ sudo dpkg -P libdouble-conversion1v5

dpkg: dependency problems prevent removal of libdouble-conversion1v5:amd64:
 libqt5qml5:amd64 depends on libdouble-conversion1v5 (>= 2.0.0).

dpkg: error processing package libdouble-conversion1v5:amd64 (--purge):
 dependency problems - not removing
Errors were encountered while processing:
 libdouble-conversion1v5:amd64

另一项要求是:

$ apt list --installed | grep hw

WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

hwdata/xenial-updates,xenial-updates,now 0.267-1ubuntu2 all [installed]
linux-generic-hwe-16.04/xenial-updates,xenial-security,now 4.15.0.55.76 amd64 [installed]
linux-headers-generic-hwe-16.04/xenial-updates,xenial-security,now 4.15.0.55.76 amd64 [installed]
linux-hwe-tools-4.15.0-54/xenial-updates,xenial-security,now 4.15.0-54.58~16.04.1 amd64 [installed,automatic]
linux-hwe-tools-4.15.0-55/xenial-updates,xenial-security,now 4.15.0-55.60~16.04.2 amd64 [installed,automatic]
linux-image-generic-hwe-16.04/xenial-updates,xenial-security,now 4.15.0.55.76 amd64 [installed,automatic]
linux-signed-generic-hwe-16.04/xenial-updates,xenial-security,now 4.15.0.55.76 amd64 [installed]
linux-signed-image-generic-hwe-16.04/xenial-updates,xenial-security,now 4.15.0.55.76 amd64 [installed]
linux-tools-generic-hwe-16.04/xenial-updates,xenial-security,now 4.15.0.55.76 amd64 [installed,automatic]
lshw/xenial-updates,now 02.17-1.1ubuntu3.6 amd64 [installed]
xserver-xorg-core-hwe-16.04/xenial-updates,xenial-security,now 2:1.19.6-1ubuntu4.1~16.04.2 amd64 [installed]
xserver-xorg-hwe-16.04/xenial-updates,now 1:7.7+16ubuntu3~16.04.1 amd64 [installed]
xserver-xorg-input-all-hwe-16.04/xenial-updates,now 1:7.7+16ubuntu3~16.04.1 amd64 [installed]
xserver-xorg-input-evdev-hwe-16.04/xenial-updates,now 1:2.10.5-1ubuntu1~16.04.1 amd64 [installed]
xserver-xorg-input-synaptics-hwe-16.04/xenial-updates,now 1.9.0-1ubuntu1~16.04.1 amd64 [installed]
xserver-xorg-input-wacom-hwe-16.04/xenial-updates,now 1:0.34.0-0ubuntu2~16.04.1 amd64 [installed]
xserver-xorg-legacy-hwe-16.04/xenial-updates,xenial-security,now 2:1.19.6-1ubuntu4.1~16.04.2 amd64 [installed,automatic]
xserver-xorg-video-all-hwe-16.04/xenial-updates,now 1:7.7+16ubuntu3~16.04.1 amd64 [installed]
xserver-xorg-video-amdgpu-hwe-16.04/xenial-updates,now 18.0.1-1~16.04.1 amd64 [installed]
xserver-xorg-video-ati-hwe-16.04/xenial-updates,now 1:18.0.1-1~16.04.1 amd64 [installed]
xserver-xorg-video-fbdev-hwe-16.04/xenial-updates,now 1:0.4.4-1build6~16.04.1 amd64 [installed]
xserver-xorg-video-intel-hwe-16.04/xenial-updates,now 2:2.99.917+git20171229-1~16.04.1 amd64 [installed]
xserver-xorg-video-nouveau-hwe-16.04/xenial-updates,now 1:1.0.15-2~16.04.1 amd64 [installed]
xserver-xorg-video-qxl-hwe-16.04/xenial-updates,now 0.1.5-2build1~16.04.1 amd64 [installed]
xserver-xorg-video-radeon-hwe-16.04/xenial-updates,now 1:18.0.1-1~16.04.1 amd64 [installed]
xserver-xorg-video-vesa-hwe-16.04/xenial-updates,now 1:2.3.4-1build3~16.04.1 amd64 [installed]
xserver-xorg-video-vmware-hwe-16.04/xenial-updates,now 1:13.2.1-1build1~16.04.1 amd64 [installed]

下一步

我可能遭遇了包裹被扣留的情况:

因为这三个包都存在于16.04它们只是没有升级到19.04

$ apt list unity-control-center
Listing... Done
unity-control-center/xenial-updates,now 15.04.0+16.04.20171130-0ubuntu1 amd64 [installed]
N: There is 1 additional version. Please use the '-a' switch to see it

$ apt list libqt5core5a
Listing... Done
libqt5core5a/xenial-updates,xenial-security,now 5.5.1+dfsg-16ubuntu7.6 amd64 [installed]
N: There is 1 additional version. Please use the '-a' switch to see it

$ apt list libdouble-conversion1v5
Listing... Done
libdouble-conversion1v5/xenial,now 2.0.1-3ubuntu2 amd64 [installed]

链接中的答案有很多建议,下班后我首先尝试的是:

sudo apt-get --with-new-pkgs upgrade

答案1

我建议使用以下命令之一尝试更深入的方法:

  • 尝试获取新的依赖项

    sudo apt-get dist-upgrade
    
  • 尝试 Aptitude 的安全升级

    sudo aptitude safe-upgrade
    
  • 尝试 Aptitude 的 dist-upgrade

    sudo aptitude safe-upgrade
    
  • 尝试 Aptitude TUI 查看损坏的软件包

    sudo aptitude
    

如果所有这些命令都失败 - 则使用以下方法之一重新开始删除过时的软件包:

  • apt-get

    sudo apt-get autoremove
    
  • 使用 Aptitude 的 TUI

    sudo aptitude
    

    然后导航至过时的和本地创建的软件包并小心地从此部分移除包裹,同时控制破损的包裹。

笔记:

  1. 在干净的 Ubuntu 19.04 VM 上,我无法安装libdouble-conversion1v5软件包,因为它来自 16.04 LTS
  2. 我已成功使用以下命令将 Ubuntu MATE 16.04 LTS 升级到 19.04:

    sudo apt-get update
    sudo apt-get dist-upgrade
    sudo apt-get install libdouble-conversion1v5
    sudo apt-get clean
    sudo sed -i 's/xenial/disco/' /etc/apt/sources.list
    sudo apt-get update
    sudo apt-get dist-upgrade
    

    但是为了将默认的 Ubuntu 16.04 LTS(带有 Unity)升级到 19.04,我被迫使用了sudo apt-get dist-upgrade -f几次才成功并使用sudo dpkg -i --force-all /var/cache/apt/archives/grilo-plugins*.deb(仅适用于这个包)。

  3. 我还使用以下命令成功运行了 Ubuntu MATE(和 Unity)16.04 LTS → 18.04 LTS → 19.04 的升级:

    sudo apt-get update # on 16.04 LTS
    sudo apt-get dist-upgrade
    sudo apt-get install libdouble-conversion1v5
    sudo apt-get clean
    sudo do-release-upgrade # with reboot into 18.04 LTS
    sudo sed -i 's/Prompt=never/Prompt=normal/' /etc/update-manager/release-upgrades
    sudo apt-get clean
    sudo do-release-upgrade # to 19.04
    

所以看来我们需要检查一下您的升级脚本:)

相关内容