以下包具有未满足的依赖项!

我写这篇是因为我对在我的Ubuntu 14.04上安装PostgreSQL 9.3感到非常困惑。 首先我需要它用于我的Python / Django开发,当我尝试安装它时遇到了问题。 现在我有这个错误,它让我发疯:

The following packages have unmet dependencies: postgresql-9.3 : Depends: postgresql-client-9.3 but it is not going to be installed Depends: postgresql-common (>= 142~) but it is not going to be installed E: Unable to correct problems, you have held broken packages. 

我在网上找到了一些解决方案( 如何在添加PPA后解决未满足的依赖关系? ),我为预防措施部分做了一切,因为我遇到了一些破坏的包问题,并且在我再次向我显示此错误后再次显示。

我遵循官方PostgreSQL安装教程( http://www.postgresql.org/download/linux/ubuntu/ )的第二件事,我有重复的存储库,但我删除了它们,我添加了一个新的但是还是这个错误。

您可以使用安装包。

确保回购消息来源是最新的

 sudo apt-get update 

安装包。

 sudo apt-get install packagename 

一旦程序包确定您有一些缺少的依赖项,请运行以下命令来修复已损坏或缺少的依赖项。

 sudo apt-get install -f 

如果您已经安装了软件包,则上面的命令只会下载缺少的依赖项。

有时,需要修复的依赖项与您尝试安装的程序无关。 在我的情况下,它发出了这个错误:

以下有未满足的家属

shashlik:取决于:libc6-i386但它不会被安装

取决于:lib32gcc1但它不会被安装

取决于:lib32z1但它不会被安装

事实certificate,我曾尝试安装一个名为“Shashlik”的程序,但安装失败了。 所以我运行了代码:

 sudo apt-get --purge remove shashlik 

然后我跑了:

 sudo apt install autoconf 

这似乎修复了我的程序安装后的错误。 我不确定第二个命令有多大帮助,但我把它放在那里以防止解决方案有效。

让我与其他人分享我安装postgresql-9.3经验。 首先,我一直在努力解决这个问题大约4/5天,我终于设法做到了。

我在第一篇文章中分享的这些令人讨厌的错误都出错了,因为我试图谷歌它并发现人们有更多相同的错误,或者努力解决类似错误。

长话短说,你在这里有一个非常好的答案如何解决未满足的包:

如何在添加PPA后解决未满足的依赖关系?

我的错误是我已经制作了重复的存储库,并且这个链接的答案解决了,这个命令sudo apt-get install -f只是犯了另一个错误,你必须手动完成,至少我做了(阅读预防部分)措施,但你可以读到最后,这是一个imbapost)。

其次,我设法从官方PostgreSQL页面http://www.postgresql.org/message-id/20140327084212.GA12703@msgid.df7cb.de谷歌这篇post(这是人们在安装postgresql时经常遇到的错误),这导致我
https://wiki.postgresql.org/wiki/Apt ,这是将PostgreSQL软件包添加到系统的正确方法,只需阅读并逐步完成即可。

第三步是@vembutechpost中提供的一系列命令:

 sudo apt-get update && sudo apt-get upgrade sudo apt-get install postgresql-9.3 postgresql-contrib-9.3 

尝试安装with with命令。

 sudo apt-get install postgresql-common=151.pgdg12.4+1 sudo apt-get install postgresql-9.3 postgresql-contrib-9.3 

我知道我有点晚了,但上述解决方案都不适合我。 真正解决我问题的是使用aptitude而不是apt-get。 aptitude将建议解决问题。 例如:

 The following actions will resolve these dependencies: Keep the following packages at their current version: 1) libyaml-dev [Not Installed] Accept this solution? [Y/n/q/? (n) The following actions will resolve these dependencies: Downgrade the following packages: 1) libyaml-0-2 [0.1.4-3ubuntu3.1 (now) -> 0.1.4-3ubuntu3 (trusty)] Accept this solution? [Y/n/q/?] (Y) 

正如本文所述。