FileZilla:以下包具有未满足的依赖关系

我正在尝试安装FileZilla 3.19但运行apt-get install filezilla时出现此错误:

 Reading package lists... Done Building dependency tree Reading state information... Done Some packages could not be installed. This may mean that you have requested an impossible situation or if you are using the unstable distribution that some required packages have not yet been created or been moved out of Incoming. The following information may help to resolve the situation: The following packages have unmet dependencies. filezilla : Depends: libdbus-1-3 (>= 1.9.14) but 1.6.18-0ubuntu4.3 is to be installed Depends: libfilezilla0 but it is not going to be installed Depends: libgnutls30 (>= 3.4.2) but it is not installable Depends: libnettle6 but it is not installable Depends: libpugixml1v5 (>= 1.7) but it is not installable Depends: libstdc++6 (>= 5.2) but 4.8.4-2ubuntu1~14.04.3 is to be installed Depends: libwxbase3.0-0v5 (>= 3.0.2+dfsg) but it is not installable Depends: libwxgtk3.0-0v5 (>= 3.0.2+dfsg) but it is not installable E: Unable to correct problems, you have held broken packages. 

我该如何解决?

您已将GetDeb软件包存储库配置为使用Xenial软件包,即使您的其他软件包用于Trusty也是如此。 您需要编辑相关的sources.list文件并用xenial替换xenial 。 这是一种自动执行此操作并更新包列表的方法:

 sudo sed -i -e 's/xenial-getdeb/trusty-getdeb/' /etc/apt/sources.list{,.d/*.list} sudo apt-get update 

然后跑

 apt-cache policy filezilla 

标识要安装的版本。 apt-cache列出包版本及其原始源代码行。 选择在源代码行中具有“可信赖”的一个。 现在,您在修复程序包问题时以正确的版本重新安装filezilla软件包。 根据您在上一步中的发现替换并运行:

 sudo apt-get install -f filezilla= 

在本网站中,您可以看到每个Ubuntu版本的存储库中仍可获得官方支持的FileZilla软件包列表。 正如您所看到的,FileZilla的最新版本 – 3.19.0-1ubuntu1 – 仅适用于尚未发布的Ubuntu 16.10。 如果你的Mint发行版基于Trusty,那么从普通的存储库中你只能访问一个三年前版本的FileZilla – 3.7.3-1ubuntu1

现在,正如你在评论中所说,你做了一个发行版更新(对于一个不稳定的发行版?)。 这是一种非常冒险的方法来访问特定的包,因为它可能会破坏其他依赖项,这种情况发生在您的情况下。 如果要升级,建议您进行全新安装

实际上,有一种更安全的方法来访问更新的包,而无需更改发行版:

  • 下载您感兴趣的特定.deb文件(查看此处并根据您的PC架构选择)
  • (通过终端)转到下载文件的文件夹并使用sudo dpkg -i file.deb安装软件包
  • 运行sudo apt-get install -f以确保没有破坏的依赖项。

在那里,你有一个较新的,稳定的旧版软件包,无需冒着操作系统的风险。