卸载期间如何维护依赖关系?

卸载期间如何维护依赖关系?

我最近使用 synaptic 包管理器从我的 ubuntu 14.04 中卸载了它,ubuntu-web-browser因为我不使用它。现在我无法启动 vlc 媒体播放器,也无法使用 vlc 播放任何文件。它会打开然后立即自动关闭。当我尝试vlc在终端中打开时,我得到了这个:

VLC media player 2.1.4 Rincewind (revision 2.1.4-0-g2a072be)
[0x8f6d910] main libvlc: Running vlc with the default interface. Use 'cvlc' to use vlc without interface.
[0x8ff7368] skins2 interface error: no suitable dialogs provider found (hint: compile the qt4 plugin, and make sure it is loaded properly)
[0x8ff7368] skins2 interface error: cannot instantiate qt4 dialogs provider
[0x8ff7368] [cli] lua interface: Listening on host "*console". VLC media player
2.1.4 Rincewind
Command Line Interface initialized. Type `help' for help.

由于这个 vlc 问题,我两次重新安装了 ubuntu。但直到这次我才意识到这是由于卸载了 ubuntu-web-browser 导致 vlc 停止工作。我知道这一点是因为我在卸载地雷和其他游戏以及 ubuntu 浏览器之前测试过 vlc 可以运行。但卸载这些之后,vlc 无法启动。所以我怀疑卸载这些是原因。

现在我的问题是,如果 vlc 依赖于某些软件包,而这些软件包由于其他东西的卸载而被卸载,那么为什么即使 vlc 依赖于这些软件包,这些软件包也会被删除?(我错了吗,还是遗漏了什么?)卸载期间如何维护依赖关系?此外,如何在不再次安装 ubuntu 的情况下运行 vlc?

新的荒谬观察:

我使用以下命令卸载了 ubuntu 中的游戏这里

sudo apt-get remove --purge gnome-mahjongg gnomine gnome-sudoku aisleriot

又出现了同样的问题 !!! Vlc 停止工作,终端中出现同样的错误消息!有人知道问题是什么,以及如何解决它吗?

另一个荒谬的观察

这次我使用卸载了游戏apt-get remove,但 vlc 仍在工作。然后unity-tweak-tool在启动时出现错误消息。通过安装解决了这个问题,unity-webapps-service如所述这里。然后 vlc 停止工作,再次给出该消息!

答案1

你问,

现在我的问题是,如果 vlc 依赖于某些由于卸载其他东西而被卸载的软件包,那么为什么即使 vlc 依赖它们,这些软件包也会被删除?

答案:不,aptUbuntu 使用的包管理系统不会删除其他包所依赖的包,即使你想卸载其中一些包。那样做很愚蠢。举一个典型的例子,考虑包libc6。它是 Ubuntu 的核心包之一,因此很多包都依赖于它。但卸载其中的一两个包并不会删除libc6

此外,如果您故意想要删除一个软件包,而很多软件包都依赖这个软件包,Ubuntu 或特定apt系统会在实际卸载之前警告您。但如果您愿意,您也可以卸载该软件包!在这种情况下,依赖于此的其他软件包也会被删除。

情况1:

假设有三个包,分别为core-xaba并且b都依赖于core-x包 。 现在,如果您尝试删除包bcore-x则不会被删除,因为它仍然是 运行所必需的a

案例 2:

再次考虑我们虚构的软件包。如果您现在尝试core-x通过将 放入apt-get remove行来删除软件包,则会将和软件包core-x一起删除,因为如果没有 ,这两个(a 和 b)将无法运行。abcore-x


你的第二个问题是 -

如何在不再次安装 ubuntu 的情况下运行 vlc?

为此,请尝试使用vlc选项删除purge并重新安装。以下命令将完成此工作。

sudo apt-get --purge autoremove libvlc5

并使用

sudo apt-get install vlc

奖金:通过使用libvlc5而不是普通的vlc,你只是尝试案例 2您删除了一个软件包,但其他软件包依赖该软件包。

希望这可以帮助。

答案2

当我执行以下操作时,Vlc 问题就解决了:

  • 完全移除vlc
  • 删除了我的 ZTE 调制解调器(ZTE MF-193E)的驱动程序,该驱动程序使用 qt 插件来运行
  • 再次安装vlc;并且vlc运行正常

后来我再次安装了调制解调器驱动程序,但这次vlc仍然有效!

相关内容