修复错误 “Unable to correct problems, you have held broken packages”

时间:2020-01-09 10:44:37  来源:igfitidea点击:

在Ubuntu中安装应用程序遇到如下依赖性错误:

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:
 green-recorder : Depends: python-urllib3 but it is not installable
E: Unable to correct problems, you have held broken packages.

确保系统的程序包缓存已更新

首先,请确保本地程序包缓存已更新。系统在此缓存中检查可用的软件包。缓存更新后,系统可能会看到(但不确定)依赖包。

sudo apt update

尝试再次安装有问题的软件包,然后查看它是否可以解决问题。

安装依赖项

如果我们尝试再次安装麻烦的软件包,但它仍然抱怨相同的依赖项错误,则可能是该依赖关系不适用于发行版。

我们可以使用apt search命令查看是否可以从其他软件包或者名称中获得此库:

sudo apt search package_name

如果该软件包可用,那么它与我们尝试安装的软件包所要求的版本是否相同?

尝试安装依赖项包,看看会发生什么:

sudo apt install dependency_package

我们可能会遇到依赖关系链。我们尝试安装依赖项A但它抱怨B。然后我们尝试安装B并抱怨C。

如果在任何地方都找不到依赖包,请从其他来源安装麻烦的包

因此,在上面的示例中,我尝试使用其PPA安装Green Recorder应用程序。该应用程序需要python-urllib3库,但是不幸的是,该库在我的Ubuntu 20.04系统中不可用。

theitroad@localhost:~$ apt search python-urllib3
Sorting... Done
Full Text Search... Done