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:
package1 : Depends: package2 (>= 1.8) but 1.7.5-1ubuntu1 is to be installed
E: Unable to correct problems, you have held broken packages.
我该如何解决?
#1 楼
APT是用于Debian和其他基于Linux发行版的软件包管理系统,例如Ubuntu。在大多数情况下,APT易于安装,删除和更新软件包。在极少数情况下,通常当您混入第三方依赖项时,apt-get
可能最终会给您一个错误,提示您无法完成软件包安装。解决方案:
备份
/etc/apt/sources.list
之类的配置文件始终是一个好主意,因此可以根据需要还原更改。如果
error
显示像这样:<some-package>: Depends: <other-package> (= version) but this-version is to be installed
然后确保启用了
restricted
和universe
存储库。按Alt + F2,键入software-properties-gtk
,然后按Enter。在
Ubuntu Software
标签下,启用所有存储库。一个依赖关系未满足的可能原因是软件包数据库损坏,和/或某些软件包未正确安装。若要解决此问题,请按Alt + Ctrl + T打开终端,然后尝试运行以下命令之一:
sudo apt-get clean
或,
sudo apt-get autoclean
apt-get clean
清除检索到的软件包文件(.deb文件)的本地存储库。它从/ var / cache / apt / archives /和/ var / cache / apt / archives / partial /中删除除锁定文件以外的所有内容。 apt-get autoclean
清除检索到的程序包文件的本地存储库,但与apt-get clean
不同,它仅删除不再能下载且基本上无用的程序包文件。最基本的修复程序之一解决依赖关系问题的方法是运行:
sudo apt-get -f install
此处的
-f
代表“修复损坏”。 Apt
将尝试纠正损坏的依赖关系。如果您手动安装了依赖关系未满足的软件包,则apt-get
将安装那些依赖关系(如果可能),否则它可能会简单地删除您安装的软件包以解决问题。然后运行:
sudo dpkg --configure -a
然后再次运行:
sudo apt-get -f install
如果输出为:
0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.
这意味着它失败了。
下一个解决方案将运行:它显示任何保留的软件包,最好消除它们。由于
apt
无法解决的依赖性冲突而保留软件包。尝试使用以下命令查找并修复冲突:sudo apt-get -u dist-upgrade
如果无法解决冲突,它将退出:
0 upgraded, 0 newly installed, 0 to remove and 6 not upgraded.
一个一个地删除已保存的软件包,每次运行
dist-upgrade
,直到没有更多已保存的软件包。然后重新安装所有需要的软件包。请确保使用--dry-run
选项,以使您完全了解后果:sudo apt-get -o Debug::pkgProblemResolver=yes dist-upgrade
由于删除要安装的软件包可能并不理想,因此可能还请尝试查找具有满足依赖关系所需软件包的存储库。
最后,如果所有其他操作都失败,则可以尝试自己找到依赖项,方法是查找并安装必要的软件包,或者从源代码安装它们,然后创建“ deb”软件包
禁用/删除/清除PPA:
PPA(个人软件包存档)存储在Launchpad上。您可以使用PPA来安装或升级Ubuntu官方存储库中不提供的软件包。
PPA是导致未满足依赖项的最常见原因之一,尤其是在升级Ubuntu存储库中的现有软件包时。要解决该问题,您有三个选择:禁用,清除(恢复到Ubuntu存储库中的原始软件包)或删除PPA。
禁用:
禁用PPA意味着从该PPA安装的软件包不再有更新。要禁用PPA,请执行以下操作:打开
Software Center > Edit > Software Sources
或,点击Alt + F2并运行software-properties-gtk
。一条用于编译的软件包,另一条用于源代码,Other Software
这两行均禁用PPA。在这里您还可以添加和删除PPA。清除:在正式的Ubuntu存储库中选择PPA版本,并禁用该PPA。 PPA Purge正是这样做的。要安装PPA Purge,请运行以下命令:
sudo apt-get remove --dry-run package-name
但是考虑到问题
Uncheck
损坏,上述命令将失败。因此,请使用以下命令sudo apt-get install ppa-purge
要使用PPA清除:
mkdir ppa-purge && cd ppa-purge && wget http://mirror.pnl.gov/ubuntu/pool/universe/p/ppa-purge/ppa-purge_0.2.8+bzr56_all.deb && wget http://mirror.pnl.gov/ubuntu//pool/main/a/aptitude/aptitude_0.6.6-1ubuntu1_i386.deb && sudo dpkg -i ./*.deb
如果'ppa -purge'命令由于某种原因而失败,除非重新启用PPA,否则无法再次运行'ppa-purge'(要启用PPA,请执行与禁用PPA相同的步骤,然后将特定PPA的两行启用它。)
注意:
apt
不会删除PPA(可能在将来),因此您必须手动删除PPA。删除:
如果从PPA安装的软件包在官方Ubuntu存储库中不存在,则不建议使用
Check
,因为没有任何降级的内容,并且PPA Purge
也不会删除它。要删除PPA和已安装的软件包,请运行以下命令:(如果您不想删除已安装的软件包,请忽略第一个命令)sudo ppa-purge ppa:someppa/ppa
另外,您也可以使用
PPA Purge
禁用/删除/清除PPA(答案末尾的详细信息)。预防措施:
所以我们如何避免这种情况发生在第一名?
保持Ubuntu最新。 Ubuntu会在更新可用时自动通知,也可以通过在Unity面板中单击
PPA Purge
来检查可用更新:或者,按Alt + Ctrl + T打开终端并运行以下命令:
sudo apt-get autoremove --purge package-name sudo add-apt-repository --remove ppa:someppa/ppa sudo apt-get autoclean
更新:将可用软件包列表与源存储库中的服务器同步。
升级:下载并安装任何较新版本的已安装软件包。
如果您决定将其他存储库添加到sources.list,请确保该存储库旨在与Ubuntu一起使用(并可以使用)。不适用于您的Ubuntu版本的存储库可能会导致系统不一致,并可能迫使您重新安装。另外,请确保您确实需要添加外部存储库,因为您正在寻找的软件包可能已经引入了官方存储库!来源
删除重复的PPA。
Y PPA Manager
(答案末尾的安装指南)可以轻松扫描并删除重复的PPA。按Alt + F2并运行
Session Indicator
打开Y PPA Manager。一旦打开,双击或按一下
Y PPA Manager
上的Enter。在出现的窗口中,选择
y-ppa-manager
并单击OK。 br /> 在Askubuntu或任何其他帮助论坛上寻求帮助时,应在问题中包含以下命令的输出:
输出实际错误:
sudo apt-get update sudo apt-get upgrade
这将显示您的消息源。列表:
sudo apt-get install package-name
这将显示PPA列表(如果有):
cat /etc/apt/sources.list
其他来源:
'apt'Ubuntu手册页
'apt-get'Ubuntu手册页
'apt-get / how-to'社区Ubuntu文档
'存储库/ Ubuntu'社区Ubuntu文档
'存储库/ CommandLine's Community Ubuntu文档
Y PPA Manager:
Y PPA Manager是一站式商店,可满足您所有的PPA需求。
这里有一些功能:
搜索所有Launchpad PPA中的软件包
并列出PPA中的软件包
添加/删除/清除PPA
备份并还原PPA源
删除重复的PPA源
要安装
Advanced
,请点击Alt + Ctrl + T打开终端并运行以下命令:cat /etc/apt/sources.list.d/*
考虑到这个问题,
Scan and remove duplicate PPAs
坏了,所以请改用以下命令sudo add-apt-repository ppa:webupd8team/y-ppa-manager sudo apt-get update sudo apt-get install y-ppa-manager
和
32位:
sudo su
64位:
mkdir y-ppa-manager && cd y-ppa-manager && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/launchpad-getkeys_0.3.2-1~webupd8~oneiric_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/y-ppa-manager_0.0.8.6-1~webupd8~precise_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/yad_0.17.1.1-1~webupd8~precise_i386.deb && dpkg -i ./*.deb
评论
如果apt损坏,如何安装未满足的偏差?
–快球
2012年5月28日在1:17
这对我来说是一个巨大的帮助...全新安装Lubuntu 12.04,无法安装gvim(vim-gtk)或openssh-server等基本内容。我尝试了各种命令行选项,包括从这台计算机和另一台计算机(在运行Xubuntu的情况下正常运行)对/etc/apt/sources.list进行了一些比较。遵循本指南后,我发现在Software-properties-gtk中,未选中“主要”存储库的框!问题解决了!
–memilanuk
2012年6月1日的1:11
有时您确实持有破损的包裹...因此,最好的办法是将其解开并删除。参见askubuntu.com/a/363244/16395
–罗马诺
2014年2月12日5:25
没有人真正回答过如何安装具有未满足的依赖版本的软件包。神!我只想强制安装较旧版本的软件包。
–游艇
2014年4月4日在12:59
这对我不起作用:S
– AlvaroAV
2014年12月23日在11:08
#2 楼
注意:所有要求运行的命令必须在终端中运行,可以通过Ctrl + Alt + T或在破折号中搜索终端来打开。
真的坏了吗?
尝试运行以下命令,然后尝试重新安装要安装的软件
sudo apt-get update
Pre-Perfmance步骤
备份
备份以下文件:为此,请使用以下命令
sudo cp /etc/apt/sources.list /etc/apt/sources.list.original
和
sudo cp /var/lib/dpkg/status /var/lib/dpkg/status.original
清除apt-cache
/etc/apt/sources.list
保留最近下载的程序包的缓存,以在需要安装时节省带宽。在某些情况下这可能适得其反现在,要清洁它,您有两个选择
sudo apt-get clean
这将删除所有缓存的程序包.lock文件以外的文件夹属于
/var/lib/dpkg/status
和apt
文件夹。建议这样做sudo apt-get autoclean
这将扫描文件夹
/var/cache/apt/archives/
和/var/cache/apt/archives/partial
并检查程序包是否仍在存储库中,并删除那些不在存储库中的文件修复依赖项
使用apt的修复破坏模式
sudo apt-get -f install
这将导致apt扫描缺少的依赖项并从存储库修复它们。
如果输出表明没有安装或升级任何新产品,则它失败了。
检查是否已启用所有必需的源
/>
键入
/var/cache/apt/archives/
,您将获得此窗口确保已启用所有源。
下一步,转到请转到“其他软件”选项卡,然后检查是否已安装了所需的PPA,并且已启用该软件。另外,请尝试禁用一些可能有损坏的程序包的PPA
现在,运行
/var/cache/apt/archives/partial
立即尝试安装软件
选择一个更好的服务器从
键入
gksu software-properties-gtk
,您将获得此窗口。从下拉列表框中单击下载,然后选择其他
单击“选择最佳服务器”
运行
sudo apt-get update
尝试还安装软件
,请尝试使用
gksu software-properties-gtk
PPA清除
这是用于清除损坏/不需要的ppa的工具,并且它们的应用程序
要安装它,请运行
sudo apt-get install ppa-purge
但是,考虑到问题
sudo apt-get update
已损坏,因此上述命令将失败。因此,请使用此命令mkdir ppa-purge && cd ppa-purge && wget http://mirror.pnl.gov/ubuntu/pool/universe/p/ppa-purge/ppa-purge_0.2.8+bzr56_all.deb && wget http://mirror.pnl.gov/ubuntu//pool/main/a/aptitude/aptitude_0.6.6-1ubuntu1_i386.deb && sudo dpkg -i ./*.deb
现在使用ppa purge
sudo ppa-purge ppa:someppa/ppa
Y-PPA Manager
Y-PPA Manager是一款gui应用程序,可帮助您管理PPA及其相关的各种问题
要安装它
sudo add-apt-repository ppa:webupd8team/y-ppa-manager
和
sudo apt-get update
and
sudo apt-get install y-ppa-manager
考虑到这个问题,
sudo apt-get install -f
坏了,使用这些命令代替sudo su
和
32位:
mkdir y-ppa-manager && cd y-ppa-manager && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/launchpad-getkeys_0.3.2-1~webupd8~oneiric_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/y-ppa-manager_0.0.8.6-1~webupd8~precise_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/yad_0.17.1.1-1~webupd8~precise_i386.deb && dpkg -i ./*.deb
64位:
mkdir y-ppa-manager && cd y-ppa-manager && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/launchpad-getkeys_0.3.2-1~webupd8~oneiric_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/y-ppa-manager_0.0.8.6-1~webupd8~precise_all.deb && wget https://launchpad.net/~webupd8team/+archive/y-ppa-manager/+files/yad_0.17.1.1-1~webupd8~precise_amd64.deb && dpkg -i ./*.deb
现在在
apt
中输入您将看到此窗口
双击“高级”,您将获得此窗口
执行以下以黑色概述的任务
>
预防胜于治疗
预防胜于在AskUbuntu上搜索此问题:D
所以,这是GUI勾画出确保您安全的方法
始终保持系统最新状态
始终定期运行以下命令
sudo apt-get update&&sudo apt-get upgrade
,或者,您始终可以通过此命令使用Update Manager
gksu update-manager
仅使用受信任的PPA的
仅使用打算在Ubuntu上使用的PPA,仅将PPA与可信赖的来源一起使用。实际上,该程序包可能已经在ubuntu存储库中。
情况良好时进行备份,然后再进行恢复
为此,您需要Y-PPA-Manager。
运行此命令以打开Y-PPA-Manager
y-ppa-manager
将向您显示此窗口
双击高级,您将获得此窗口
运行此窗口:
系统将要求您使用与以下类似的对话框来保存tar.gz文件。将其保存在另一个分区或安全的地方
稍后,当您需要再次还原它时,请遵循类似的步骤,并在进入高级对话框时,单击这:
系统将要求您从以前保存的先前备份中还原,并显示类似以下对话框的对话框
仍然无法正常工作?
软件包依赖关系错误并不总是通用的,并且取决于要安装的软件包。
如果按照给出的所有步骤修复错误对您不起作用,则可以总是在Ask Ubuntu上询问
这里有一些命令需要发布
sudo apt-get install packagename
和
cat /etc/apt/sources.list
和
cat /etc/apt/sources.list.d/*
(感谢Basharat Sial)
还有其他文件/命令可以您需要的输出可能是特定于错误的,并且用户可能会在注释中提示您发布文件/命令。
评论
我会将apt-get更新放在列表的顶部附近。有时您的系统进行了一次更新,其中一个较新的软件包已被远程更新,但是它所依赖的一个软件包尚未完成构建。或者您本地缓存中的版本已更新。在这种情况下,简单的apt-get更新将更新您的本地缓存,您可以继续进行。
–哈米什·唐纳(Hamish Downer)
2012年5月27日上午9:45
一流的答案!这只是让我希望apt和或dpkg具有更好的保护,以确保它们不会陷入这些卡住的损坏状态,或者能够更好地解决它们。我以前曾遇到过此问题,当apt-get install -f无法修复它时,我感到非常沮丧。
–杰夫·韦林(Jeff Welling)
2012年5月30日下午3:11
您可能还需要添加以下警告:“永远不要在启用PPA时升级系统,先禁用它们,然后再升级”,因为,如果升级到PPA版本,然后PPA失效,则最终意味着您已死亡。您不能将整个系统降级到较低的版本号,也不能从标准存储库安装某些东西,因为来自标准存储库的软件包与所安装的PPA软件包存在冲突。
–安瓦尔
2012年9月14日下午3:39
选择一个更好的服务器为我修复它。谢谢!
–Hoang Huynh
15年2月28日在19:19
我以为-f标志代表力量,始终避免使用它
–德米特里·科罗里奥夫
16年5月30日在2:08
#3 楼
到目前为止,这些答案都集中在如何帮助系统自动解决此问题上,主要是希望它能够解决问题,而不是集中在了解如何调查依赖关系上。重要的是尝试确保您的包裹清单是最新的。在深入研究之前,始终确保简单的更新或清除缓存不能解决问题。但是,如果幕后的一切都按预期运行,那么了解依赖关系至关重要。有时,依赖关系的层次看起来似乎是压倒性的,但是这个概念很简单,是理解在Ubuntu系统中如何安装/卸载软件的关键。例如Debian,Kali,Ubuntu或其任何衍生产品。它提供了一个界面来浏览依赖项的层次,包括推荐和建议的软件包。当apt-get无法为冲突提供解决方案以及可视化依赖关系时,它是一种宝贵的工具。 (Synaptic在Ubuntu中也可用。)Aptitude的冲突解决程序将引导您完成可能已安装/已删除/已升级/等的软件包的组合,这些软件包可以满足您所请求的操作而不会发生冲突。即使apt无法找到解决方案,这通常也可以成功。作为Ubuntu用户,通常不会出现需要您调查为什么安装特定软件包或引起冲突的情况,但是随着您使用该系统的增多,这几乎是不可避免的。
评论
投票提及Aptitude冲突解决程序。有时必须使用这样的高级工具来确定可能的可能性并查明核心冲突。
– John S Gruber
2012年6月1日下午4:34
这实际上可能是该线程中的最佳答案。甚至可以通过有关aptitude的冲突解决程序的快照教程进行改进。
–路易斯·德·索萨(Luísde Sousa)
2014年1月16日上午9:02
该链接虽然没有解释依赖性或它们的一般概念,但确实显示了交互式解析器的快速教程:aptitude.alioth.debian.org/doc/en/ch02s03s03.html
– Aquafunk
2014年11月7日在1:22
在面对GTK3冲突时,+ 1才智挽救了我的培根。 apt-get根本没有帮助。
–克里斯·拉普兰特(Chris Laplante)
2014年12月15日17:30
我喜欢的是sudo aptitude --full-resolver my_package。通常可以得到以下软件包具有未满足的依赖关系和列表,其中7)
–user47206
15年7月13日在19:52
#4 楼
package1:取决于:package2(> = 1.8)但要安装1.7.5-1ubuntu1消息的解释:
为了进行安装要完成,package1需要package2。
package2必须在> = 1.8版本中可用
程序包管理器检查了所有存储库,仅发现可以安装的版本1.7.5-1ubuntu1,它将不会安装。之所以这样做,是因为它是<1.8
修复
该问题没有一个正确的答案,也没有简单的答案。
有为什么会发生这种情况的许多情况,必须调查所有选项并尝试解决导致此错误的前提条件。
方案A:
您拥有的所有存储库访问没有版本> = 1.8的package2,因此您将不得不找到一个包含它的存储库。如果找不到版本> = 1.8的存储库,则可能必须从源代码构建和安装package2。然后尝试安装package1。
如果您想知道如何从源代码构建软件包,请检查其他问题/答案或发布新的软件包。
方案B:
版本库中确实包含版本大于等于1.8的package2,但软件包管理器仍希望安装较旧的版本(1.7.5)。
原因可能是package2的较新版本由某些较新的技术所构建,而已安装的其他软件包不支持该技术。
根本无法修复。您可以尝试使用apt或synaptic并查找存储库中可用的package2的所有版本,并尝试安装特定版本> = 1.8
如果您有其他不兼容的软件包,并且这将为所有其他阻止安装package2> = 1.8的软件包提供类似的错误消息列表。
在这种情况下,您会有更大的问题。您想安装package1,需要package2为> = 1.8,但是版本> = 1.8的package2要求package3为版本> = 6.7,并且您的package3版本为6.3
包管理器(APT)尝试自动解决所有这些依赖关系(如果可能)。如果它说不可能(并发出类似问题的消息),则应该信任它。
如果您决定不信任包管理器,并且确定可以如果没有问题,则可以尝试强制一个接一个地强制安装所有软件包的特定所需版本。希望当心。
请注意,对系统软件包执行此操作会造成严重问题。您可以将自己锁定在系统之外,阻止关键服务等。
方案C:
不管出现问题的原因是什么,您都可以随时设置进行手动编译和构建所需的软件包及其所有依赖项,都来自源中的确切所需版本。使用此选项,您可以将自己构建的内容保留在单独的目录中,并且不在系统路径中,这样它就不会与系统产生冲突。这可能是最干净的解决方案,有时可以做得更快。
方案D:
程序包管理器可以访问有关程序包的过时信息,因此无法找到解。查看其他答案。
方案E:
程序包管理器在依赖关系解析代码中存在错误。
您必须调查一下确实是这样,然后发出错误请求。
...
方案Z:
可能还有其他方案。
例如,软件包维护者可能是错误的,甚至没有检查package1是否适用于package2 <1.8版本,并且在规范中它们设置了错误的依赖项。
#5 楼
每当您对未满足的依赖关系有误时,都必须遵循这些方法。按照说明进行操作之后,请尝试安装软件。这些方法中的至少一种应为您工作
1。在尝试任何新命令或添加任何新的ppa之前,请尝试以下
清理apt缓存:
sudo apt-get clean
清理所有未使用的依赖项:
sudo apt-get autoremove
更新apt-cache
sudo apt-get update
这将删除所有缓存并下载新的缓存。应该这样做以获得最新的缓存程序包和更新。
2。尝试
sudo apt-get install -f
。 它可能会提供一些有关删除和安装软件包的建议,并采取合理的措施。
3。从
Download Server
更改Software Sources
,因为有时服务器上的文件已损坏。4。如果您之前为损坏的依赖关系添加了外部ppa,也会发生这种情况。尝试通过
输入
sudo add-apt-repository --remove ppa:someppa/ppa
删除该ppa,然后手动删除ppa安装的文件/库< br或
清除PPA(这也会删除已安装的文件)
sudo apt-get install ppa-purge #a one time install
sudo ppa-purge ppa:someppa/ppa
5。如果不是4,那么请至少尝试删除显示为损坏的依赖关系的软件包,然后再次尝试安装。据报道,该软件包已经为许多人使用。
6。始终添加存储库/ PPA的稳定版本。
7另请确保已启用所有正式存储库(在
Software Sources
中)请不要启用
Proposed Updates
,因为它们是为测试/开发人员准备的。 如道格所说:
通常,解决此问题的最好的第一步是确定
<pkg1>
和<pkg2>
的来源。另外没有指出的是,在很多情况下(即使不是大多数情况下),“要安装
我会继续添加一些无法找到的东西来修复
unmet dependencies
。评论
@Ashu您可能要修复的一件事-apt-get更新不会更新apt缓存(它由下载的.deb文件和一个存储有关已存储的.deb文件信息的文件组成)。它更新软件包索引文件(包含有关可从每个可用软件源下载和安装哪些软件包的信息)。如前所述,apt-get clean不会清除与apt-get update更新相同的内容。有关详细信息,请参见man apt-get。
– Eliah Kagan
2012年5月30日19:07
#6 楼
在大多数情况下,通过aptitude
安装软件包将解决未满足的依赖关系。默认情况下,您的PC上未安装aptitude
软件包。因此,请先运行sudo apt-get update
sudo apt-get install aptitude
,然后再安装
sudo aptitude install packagename
例如,
avinash@avinash-Lenovo-IdeaPad-Z500:~$ sudo apt-get install ubuntu-sdk 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: ubuntu-sdk : Depends: qtcreator-plugin-ubuntu but it is not going to be installed E: Unable to correct problems, you have held broken packages.
通过
aptitude
安装软件包avinash@avinash-Lenovo-IdeaPad-Z500:~$ sudo aptitude install ubuntu-sdk The following NEW packages will be installed: apparmor-easyprof{a} apparmor-easyprof-ubuntu{a} at{a} build-essential{a} click{a} click-apparmor{a} click-dev{a} click-doc{a} cordova-ubuntu-2.8 cordova-ubuntu-2.8-examples{a} debhelper{a} devscripts{a} dh-apparmor{a} dh-make{a} distro-info-data{a} dpkg-dev{a} dput{a} g++{a} g++-4.8{a} geoclue-gypsy{a} libalgorithm-diff-perl{a} libalgorithm-diff-xs-perl{a} libalgorithm-merge-perl{a} libboost-filesystem1.53.0{a} libboost-program-options1.53.0{a} libboost-regex1.53.0{a} libbotan-1.10-0{a} libdee-qt5-3{a} libdistro-info-perl{a} libexporter-lite-perl{a} libglib2.0-dev{a} libgstreamer-plugins-base1.0-dev{a} libgstreamer1.0-dev{a} libgypsy0{a} libhud2{a} libio-stringy-perl{a} libjs-jquery{a} libjs-sphinxdoc{a} libjs-underscore{a} liblockdev1{a} libmail-sendmail-perl{a} libparse-debcontrol-perl{a} libpcre3-dev{a} libpcrecpp0{a} libpoppler-qt5-1{a} libqdjango-db0{a} libqgsttools-p1{a} libqt5clucene5{a} libqt5contacts5{a} libqt5declarative5{a} libqt5designer5{a} libqt5designercomponents5{a} libqt5feedback5{a} libqt5help5{a} libqt5location5-plugins{a} libqt5multimedia5{a} libqt5multimedia5-plugins libqt5multimediaquick-p5{a} libqt5multimediawidgets5{a} libqt5organizer5{a} libqt5qml-graphicaleffects{a} libqt5script5 libqt5scripttools5{a} libqt5svg5{a} libqt5svg5-dev libqt5systeminfo5{a} libqt5v8-5-dev libqt5versit5{a} libqt5versitorganizer5{a} libqt5webkit5-dev libqt5webkit5-qmlwebkitplugin{a} libqt5xmlpatterns5{a} libqt5xmlpatterns5-dev libstdc++-4.8-dev{a} libsys-hostname-long-perl{a} libthumbnailer0{a} libu1db-qt5-3{a} libunity-action-qt1{a} libupstart-app-launch1{a} libusermetricsinput1{a} libxml2-dev{a} libxslt1-dev{a} po-debconf{a} python3-apparmor-click{a} python3-click{a} python3-magic{a} qmlscene qt3d5-dev qtbase5-doc{a} qtcreator{a} qtcreator-doc{a} qtcreator-plugin-ubuntu{a} qtcreator-plugin-ubuntu-common{a} qtdeclarative5-accounts-plugin qtdeclarative5-cordova-2.8-plugin{a} qtdeclarative5-dev-tools qtdeclarative5-doc-html{a} qtdeclarative5-folderlistmodel-plugin qtdeclarative5-friends0.2 qtdeclarative5-localstorage-plugin qtdeclarative5-particles-plugin qtdeclarative5-poppler1.0 qtdeclarative5-qtaudioengine-plugin qtdeclarative5-qtfeedback-plugin{a} qtdeclarative5-qtlocation-plugin qtdeclarative5-qtmultimedia-plugin{a} qtdeclarative5-qtorganizer-plugin qtdeclarative5-qtquick2-plugin{a} qtdeclarative5-qtsensors-plugin qtdeclarative5-u1db1.0 qtdeclarative5-ubuntu-ui-extras-browser-plugin{a} qtdeclarative5-ubuntu-ui-extras-browser-plugin-assets{a} qtdeclarative5-ubuntu-ui-toolkit-plugin{a} qtdeclarative5-unity-action-plugin{a} qtdeclarative5-usermetrics0.1 qtdeclarative5-window-plugin{a} qtdeclarative5-xmllistmodel-plugin qtgraphicaleffects5-doc{a} qtlocation5-dev{a} qtmultimedia5-dev qtmultimedia5-doc{a} qtmultimedia5-doc-html{a} qtscript5-dev qtscript5-doc{a} qtscript5-doc-html{a} qtsensors5-dev{a} qtsvg5-doc{a} qtsvg5-doc-html{a} qttools5-dev qttools5-dev-tools qttools5-doc{a} qtwebkit5-doc-html{a} schroot{a} schroot-common{a} sqlite3{a} ubuntu-html5-container ubuntu-html5-sdk{ab} ubuntu-html5-theme{a} ubuntu-html5-theme-examples ubuntu-sdk ubuntu-sdk-libs ubuntu-sdk-libs-dev{a} ubuntu-ui-toolkit-doc{a} ubuntu-ui-toolkit-examples{a} ubuntu-ui-toolkit-theme{a} unity-action-doc{a} upstart-app-launch{a} upstart-app-launch-tools{a} usermetricsservice{a} wdiff{a} zlib1g-dev{a} The following packages will be upgraded: cpp-4.8 gcc-4.8 gcc-4.8-base hud libasan0 libatomic1 libgcc-4.8-dev libgcc1 libglib2.0-0 libglib2.0-bin libgomp1 libitm1 libquadmath0 libstdc++6 libtsan0 15 packages upgraded, 151 newly installed, 0 to remove and 293 not upgraded. Need to get 108 MB/126 MB of archives. After unpacking 273 MB will be used. The following packages have unmet dependencies: ubuntu-html5-sdk : Depends: qtdeclarative5-ubuntu-webapps-api which is a virtual package. Depends: ubuntu-html5-ui-toolkit but it is not going to be installed. The following actions will resolve these dependencies: Keep the following packages at their current version: 1) qtcreator-plugin-ubuntu [Not Installed] 2) ubuntu-html5-sdk [Not Installed] 3) ubuntu-sdk [Not Installed] Leave the following dependencies unresolved: 4) libhud-client2 recommends hud (= 13.10.1+13.10.20131014-0ubuntu1) 5) qtcreator-plugin-ubuntu-common recommends qtcreator-plugin-ubuntu Accept this solution? [Y/n/q/?] y The following NEW packages will be installed: apparmor-easyprof{a} apparmor-easyprof-ubuntu{a} build-essential{a} click{a} click-apparmor{a} cordova-ubuntu-2.8 debhelper{a} dh-apparmor{a} dh-make{a} dpkg-dev{a} g++{a} g++-4.8{a} geoclue-gypsy{a} libalgorithm-diff-perl{a} libalgorithm-diff-xs-perl{a} libalgorithm-merge-perl{a} libdee-qt5-3{a} libglib2.0-dev{a} libgstreamer-plugins-base1.0-dev{a} libgstreamer1.0-dev{a} libgypsy0{a} libhud2{a} libjs-jquery{a} libmail-sendmail-perl{a} libpcre3-dev{a} libpcrecpp0{a} libpoppler-qt5-1{a} libqdjango-db0{a} libqgsttools-p1{a} libqt5clucene5{a} libqt5contacts5{a} libqt5designer5{a} libqt5designercomponents5{a} libqt5feedback5{a} libqt5help5{a} libqt5location5-plugins{a} libqt5multimedia5{a} libqt5multimedia5-plugins libqt5multimediaquick-p5{a} libqt5multimediawidgets5{a} libqt5organizer5{a} libqt5qml-graphicaleffects{a} libqt5script5 libqt5scripttools5{a} libqt5svg5{a} libqt5svg5-dev libqt5systeminfo5{a} libqt5v8-5-dev libqt5versit5{a} libqt5versitorganizer5{a} libqt5webkit5-dev libqt5webkit5-qmlwebkitplugin{a} libqt5xmlpatterns5{a} libqt5xmlpatterns5-dev libstdc++-4.8-dev{a} libsys-hostname-long-perl{a} libthumbnailer0{a} libu1db-qt5-3{a} libunity-action-qt1{a} libupstart-app-launch1{a} libusermetricsinput1{a} libxml2-dev{a} libxslt1-dev{a} po-debconf{a} python3-apparmor-click{a} python3-click{a} qmlscene qt3d5-dev qtdeclarative5-accounts-plugin qtdeclarative5-cordova-2.8-plugin{a} qtdeclarative5-dev-tools qtdeclarative5-folderlistmodel-plugin qtdeclarative5-friends0.2 qtdeclarative5-localstorage-plugin qtdeclarative5-particles-plugin qtdeclarative5-poppler1.0 qtdeclarative5-qtaudioengine-plugin qtdeclarative5-qtfeedback-plugin{a} qtdeclarative5-qtlocation-plugin qtdeclarative5-qtmultimedia-plugin{a} qtdeclarative5-qtorganizer-plugin qtdeclarative5-qtquick2-plugin{a} qtdeclarative5-qtsensors-plugin qtdeclarative5-u1db1.0 qtdeclarative5-ubuntu-ui-extras-browser-plugin{a} qtdeclarative5-ubuntu-ui-extras-browser-plugin-assets{a} qtdeclarative5-ubuntu-ui-toolkit-plugin{a} qtdeclarative5-unity-action-plugin{a} qtdeclarative5-usermetrics0.1 qtdeclarative5-window-plugin{a} qtdeclarative5-xmllistmodel-plugin qtlocation5-dev{a} qtmultimedia5-dev qtscript5-dev qtsensors5-dev{a} qttools5-dev qttools5-dev-tools sqlite3{a} ubuntu-html5-container ubuntu-html5-theme{a} ubuntu-html5-theme-examples ubuntu-sdk-libs ubuntu-ui-toolkit-theme{a} upstart-app-launch{a} upstart-app-launch-tools{a} usermetricsservice{a} wdiff{a} zlib1g-dev{a} The following packages will be upgraded: cpp-4.8 gcc-4.8 gcc-4.8-base hud libasan0 libatomic1 libgcc-4.8-dev libgcc1 libglib2.0-0 libglib2.0-bin libgomp1 libitm1 libquadmath0 libstdc++6 libtsan0 15 packages upgraded, 108 newly installed, 0 to remove and 293 not upgraded. Need to get 27.1 MB/45.8 MB of archives. After unpacking 104 MB will be used. Do you want to continue? [Y/n/?]
评论
您的示例仅具有停止安装的能力。它实际上并没有安装任何东西。
– Kiri
2014年2月5日,11:45
@AvinashRaj,..,但是在安装aptitude之前不应该解决依赖项问题吗?
–精确
2014年2月5日在17:12
是的,在大多数情况下,它可以解决依赖关系。
– Avinash Raj
2014年2月5日在17:14
我的意思是,如果系统的软件包已损坏,则在修复该问题之前将不允许新安装..因此,如何在不首先解决问题的情况下安装智能性!
–精确
2014年2月5日在17:19
在这种情况下,我们首先必须解决损坏的软件包,否则您将无法安装aptitude。如果没有由于损坏的软件包引起的错误,则可以安装aptitude。
– Avinash Raj
2014年2月5日在17:24
#7 楼
我的回答与上面的rick类似。使用
apt-get clean
,apt-get autoclean
,apt-get autoremove
,apt-get upgrade
,apt-get update
,apt-get -u dist-upgrade
等对我都无效。我终于解决了通过
apt-get install
进入依赖关系树来解决此问题,下面的示例对此进行了说明。就我而言,我想安装libmagickwand-dev
:apt-get install libmagickwand-dev
我遇到此错误:
The following packages have unmet dependencies:
libmagickwand-dev : Depends: libmagickcore4-extra (= 8:6.6.9.7-5ubuntu3.2) but it is not going to be installed
Depends: libmagickcore-dev (= 8:6.6.9.7-5ubuntu3.2) but it is not going to be installed
所以,我为失败的依赖项之一运行了
apt-get install
:apt-get install libmagickcore-dev
The following packages have unmet dependencies:
libmagickcore-dev : Depends: libmagickcore4-extra (= 8:6.6.9.7-5ubuntu3.2) but it is not going to be installed
Depends: libgraphviz-dev but it is not going to be installed
我走下了那棵树:
/>还有另一个错误:
apt-get install libgraphviz-dev
一旦深入树深:
The following packages have unmet dependencies:
libgraphviz-dev : Depends: libgvc5 (= 2.26.3-10ubuntu1) but it is not going to be installed
有些奇怪原因,成功了,我能够使用
apt-get install libmagickwand-dev
安装我想要的原始软件包:apt-get install libgvc5
#8 楼
极好的答案!但是今天,我的情况似乎与您的情况不同。这是我的建议。问题:
我无法在ubuntu 10.10中安装apache2。
rick@wen-VirtualBox:~$ sudo apt-get install apache2
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:
apache2 : Depends: apache2-mpm-worker (= 2.2.16-1ubuntu3) but it is not going to be installed or
apache2-mpm-prefork (= 2.2.16-1ubuntu3) but it is not going to be installed or
apache2-mpm-event (= 2.2.16-1ubuntu3) but it is not going to be installed or
apache2-mpm-itk (= 2.2.16-1ubuntu3) but it is not going to be installed
Depends: apache2.2-common (= 2.2.16-1ubuntu3) but it is not going to be installed
E: Broken packages
解决方案:
我的方法是将依赖的软件包添加到安装列表中。
如果'sudo apt-get install apache2'失败,请尝试'sudo apt-get install apache2 apache2.2-common'。
看到了吗? apache2.2-common来自上一步的错误日志。
最后我发现有一个像这样的依赖链:
apache2.2-common <-- apache2.2-bin <-- libaprutil1-ldap <-- libaprutil1
对于前三个软件包,apt-get log告诉我'不会被安装',
,但是对于最后一个软件包,它显示'libaprutil1-ldap:取决于:libaprutil1(= 1.3.9+ dfsg-3build1),但要安装1.3.9 + dfsg-3ubuntu0.10.10.1'
我的lib中存在其他版本,因此:
sudo apt-get remove libaprutil1
sudo apt-get install apache2
现在可以了。
评论
将此答案与上面的其他答案一起阅读,可以更好地理解依赖性问题。当此处的其他答案提供“高度通用”的解决方案时,这将提供理解。
–VenkiPhy6
14年7月18日在11:17
#9 楼
未满足的依赖关系是什么错误在Ubuntu上,软件包是构建,部署和安装软件的主要方法。很简单,软件包是从头开始下载,构建和安装软件的替代方法。与标准的“从源构建”模型相比,它们在软件之间的安装,删除,监视和处理交互方面提供了许多优势。
Ubuntu使用集中式打包系统,即每个软件包都依赖于其他一些软件包。当我们安装一个软件包时,将安装其依赖项,当该软件包的依赖项不可用于安装时,发生未满足的依赖项错误。 />
可能的原因
1.Computer is not connected to the Internet
2.The repository containing the depandancy package is not enabled
3.Package catalog is not updated
4.The version of the depandancy in the current repository is old
5.Software index is broken
6.The depandancy is not available for ubuntu
让TRy解决它
连接到互联网:D
确保所有默认存储库都已启用
->您可以在
Software Center
->编辑->软件源->其他源->添加”中轻松添加它们/> ->启动
Software Center
。->。在面板中转到
Edit
并选择Software Sources
。->确保已检查所有存储库
更新软件目录
单击右上方的图标,然后选择更新可用的条目在菜单
中,然后按检查按钮
4.type ctrl + al t + t打开终端并输入
sudo apt-get install -f
5.使用ppa-purge清除最近添加的ppa
ppa-purge
该程序从您的软件源禁用PPA,并将您的系统恢复为正式的Ubuntu软件包。从PPA测试新版本后,可以使用它
使系统恢复正常。
语法
sudo ppa-purge ppa:<repository-name>/<subdirectory>
示例
sudo ppa-purge ppa:ubuntu-mozilla-daily/ppa
打开软件中心,然后尝试安装任何软件,如果出现以下对话框,请按修复按钮,然后等待。
键入ctrl + alt + t打开终端并输入
sudo apt-get install -f
并按照屏幕上的说明进行操作如果仍然出现错误,请随时在askbuntu中询问它
评论
@jrg我的答案中已经有这个答案...每个答案都需要具有相同的内容吗?
–阿舒
2012年5月24日13:14
@Ashu我正在尝试帮助人们做出规范的答案-我必须告诉所有人,因为有500名代表悬赏,而我不想在帮助某些人提供答案但不理others其他人的过程中发挥最爱。 :s
– jrg
2012年5月24日13:18
#10 楼
...别忘了`build-dep`除了上面的答案外,我不得不承认我很惊讶没有人提到这种方法,这是我一直以来所使用的方法。任何时候我遇到apt-get冲突或无法解决的程序包(或者即使系统很顽固.... ha!)时,也可能会遇到“银色子弹”。相当强大的删除功能。由于
sudo dpkg -r [package]
与apt-get
一起工作,这意味着dpkg
将遵循apt-get
功能。 ,然后调用build-dep命令,apt-get将获取并安装分别属于此程序包的依赖项,以便它们可以先满足该程序包。然后最后,调用apt-get install: sudo dpkg -r [package]
sudo apt-get build-dep [package]
## pre-install all deps for the package
....'啊!让我们扭动手臂,直到您大喊“叔叔!”。
在我长期使用Linux的过程中,这种情况很少发生,但是我发现自己很少使用这种方法并且成功了。这是我一个月前使用软件包
dpkg
进行的最近奋斗的一个示例。在尝试用mysql-server重置我的root密码失败了十多次之后(即使通过--skip-grant-tables techqiue也失败了),我终于成功地“扭转了Linux的手臂,直到大吼大叫”叔叔!””:sudo apt-get install [package]
mysql-client/mysql-server
是该解决方案的关键#11 楼
在64位Multiarch Ubuntu系统中安装i386软件包的过程中如果您尝试安装依赖于许多i386软件包的软件包,则如果无法通过运行添加i386体系结构,也会导致上述依赖性错误
sudo dpkg --add-architecure i386
命令。示例:
avinash@avinash-Lenovo-IdeaPad-Z500:~$ sudo apt-get install skype
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:
skype : Depends: skype-bin but it is not installable
E: Unable to correct problems, you have held broken packages.
avinash@avinash-Lenovo-IdeaPad-Z500:~$ sudo dpkg --add-architecture i386
avinash@avinash-Lenovo-IdeaPad-Z500:~$ sudo apt-get install skype
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
gcc-4.8-base:i386 gcc-4.9-base:i386 libasound2:i386 libasound2-plugins:i386
libasyncns0:i386 libaudio2:i386 libavahi-client3:i386
libavahi-common-data:i386 libavahi-common3:i386 libc6:i386
libcgmanager0:i386 libcomerr2:i386 libcups2:i386 libdbus-1-3:i386
libdbusmenu-qt2:i386 libdrm-intel1:i386 libdrm-nouveau2:i386
libdrm-radeon1:i386 libdrm2:i386 libelf1:i386 libexpat1:i386 libffi6:i386
libflac8:i386 libfontconfig1:i386 libfreetype6:i386 libgcc1:i386
libgcrypt11:i386 libgl1-mesa-dri:i386 libgl1-mesa-glx:i386
libglapi-mesa:i386 libglib2.0-0:i386 libgnutls26:i386 libgpg-error0:i386
libgssapi-krb5-2:i386 libgstreamer-plugins-base1.0-0:i386
libgstreamer1.0-0:i386 libice6:i386 libjack-jackd2-0:i386 libjbig0:i386
libjpeg-turbo8:i386 libjpeg8:i386 libjson-c2:i386 libk5crypto3:i386
libkeyutils1:i386 libkrb5-3:i386 libkrb5support0:i386 libllvm3.4:i386
liblzma5:i386 libmysqlclient18:i386 libnih-dbus1:i386 libnih1:i386
libogg0:i386 liborc-0.4-0:i386 libp11-kit0:i386 libpciaccess0:i386
libpcre3:i386 libpng12-0:i386 libpulse0:i386 libqt4-dbus:i386
libqt4-declarative:i386 libqt4-network:i386 libqt4-opengl:i386
libqt4-script:i386 libqt4-sql:i386 libqt4-sql-mysql:i386 libqt4-xml:i386
libqt4-xmlpatterns:i386 libqtcore4:i386 libqtdbus4:i386 libqtgui4:i386
libqtwebkit4:i386 libsamplerate0:i386 libselinux1:i386 libsm6:i386
libsndfile1:i386 libspeexdsp1:i386 libsqlite3-0:i386 libssl1.0.0:i386
libstdc++6:i386 libtasn1-6:i386 libtiff5:i386 libtinfo5:i386
libtxc-dxtn-s2tc0:i386 libudev1:i386 libuuid1:i386 libvorbis0a:i386
libvorbisenc2:i386 libwrap0:i386 libx11-6:i386 libx11-xcb1:i386 libxau6:i386
libxcb-dri2-0:i386 libxcb-dri3-0:i386 libxcb-glx0:i386 libxcb-present0:i386
libxcb-sync1:i386 libxcb1:i386 libxdamage1:i386 libxdmcp6:i386 libxext6:i386
libxfixes3:i386 libxi6:i386 libxml2:i386 libxrender1:i386 libxshmfence1:i386
libxslt1.1:i386 libxss1:i386 libxt6:i386 libxv1:i386 libxxf86vm1:i386
mysql-common skype-bin:i386 sni-qt:i386 zlib1g:i386
Suggested packages:
nas:i386 glibc-doc:i386 locales:i386 rng-tools:i386 libglide3:i386
gnutls-bin:i386 krb5-doc:i386 krb5-user:i386 libvisual-0.4-plugins:i386
gstreamer-codec-install:i386 gnome-codec-install:i386
gstreamer1.0-tools:i386 gstreamer1.0-plugins-base:i386 jackd2:i386
pulseaudio:i386 libqt4-declarative-folderlistmodel:i386
libqt4-declarative-gestures:i386 libqt4-declarative-particles:i386
libqt4-declarative-shaders:i386 qt4-qmlviewer:i386 libqt4-dev:i386
libicu48:i386 libthai0:i386 qt4-qtconfig:i386
Recommended packages:
xml-core:i386
The following NEW packages will be installed:
gcc-4.8-base:i386 gcc-4.9-base:i386 libasound2:i386 libasound2-plugins:i386
libasyncns0:i386 libaudio2:i386 libavahi-client3:i386
libavahi-common-data:i386 libavahi-common3:i386 libc6:i386
libcgmanager0:i386 libcomerr2:i386 libcups2:i386 libdbus-1-3:i386
libdbusmenu-qt2:i386 libdrm-intel1:i386 libdrm-nouveau2:i386
libdrm-radeon1:i386 libdrm2:i386 libelf1:i386 libexpat1:i386 libffi6:i386
libflac8:i386 libfontconfig1:i386 libfreetype6:i386 libgcc1:i386
libgcrypt11:i386 libgl1-mesa-dri:i386 libgl1-mesa-glx:i386
libglapi-mesa:i386 libglib2.0-0:i386 libgnutls26:i386 libgpg-error0:i386
libgssapi-krb5-2:i386 libgstreamer-plugins-base1.0-0:i386
libgstreamer1.0-0:i386 libice6:i386 libjack-jackd2-0:i386 libjbig0:i386
libjpeg-turbo8:i386 libjpeg8:i386 libjson-c2:i386 libk5crypto3:i386
libkeyutils1:i386 libkrb5-3:i386 libkrb5support0:i386 libllvm3.4:i386
liblzma5:i386 libmysqlclient18:i386 libnih-dbus1:i386 libnih1:i386
libogg0:i386 liborc-0.4-0:i386 libp11-kit0:i386 libpciaccess0:i386
libpcre3:i386 libpng12-0:i386 libpulse0:i386 libqt4-dbus:i386
libqt4-declarative:i386 libqt4-network:i386 libqt4-opengl:i386
libqt4-script:i386 libqt4-sql:i386 libqt4-sql-mysql:i386 libqt4-xml:i386
libqt4-xmlpatterns:i386 libqtcore4:i386 libqtdbus4:i386 libqtgui4:i386
libqtwebkit4:i386 libsamplerate0:i386 libselinux1:i386 libsm6:i386
libsndfile1:i386 libspeexdsp1:i386 libsqlite3-0:i386 libssl1.0.0:i386
libstdc++6:i386 libtasn1-6:i386 libtiff5:i386 libtinfo5:i386
libtxc-dxtn-s2tc0:i386 libudev1:i386 libuuid1:i386 libvorbis0a:i386
libvorbisenc2:i386 libwrap0:i386 libx11-6:i386 libx11-xcb1:i386 libxau6:i386
libxcb-dri2-0:i386 libxcb-dri3-0:i386 libxcb-glx0:i386 libxcb-present0:i386
libxcb-sync1:i386 libxcb1:i386 libxdamage1:i386 libxdmcp6:i386 libxext6:i386
libxfixes3:i386 libxi6:i386 libxml2:i386 libxrender1:i386 libxshmfence1:i386
libxslt1.1:i386 libxss1:i386 libxt6:i386 libxv1:i386 libxxf86vm1:i386
mysql-common skype skype-bin:i386 sni-qt:i386 zlib1g:i386
0 upgraded, 115 newly installed, 0 to remove and 7 not upgraded.
Need to get 63.7 MB of archives.
After this operation, 225 MB of additional disk space will be used.
Do you want to continue? [Y/n]
评论
我同意这可能是原因之一。当我尝试在安装Skype之后安装其他软件包(例如vlc)时,遇到了unmet依赖性。我通过在导致错误的程序包名称末尾添加:amd64来解决类似情况。您是如何康复的?什么是最好的解决方案?
– souravc
2015年2月24日在10:59
不知道为什么这被否决了。这是我安装32位Wine所需要的。顺便说一句,您在--add-architecture中有一个错字,并且应该在--add-architecture之后添加提醒以运行apt-get upgrade。
–马特·钱伯斯(Matt Chambers)
15年8月4日在18:56
#12 楼
在尝试了该线程(和其他线程)中提到的每种方法之后,我几乎都放弃了。我将Debian Lenny升级为Squeeze,但我终生无法弄清为什么PHP5,Apache,MySQL等不想安装。最后,我尝试使用sudo apt-get purge apache2
sudo apt-get purge php5
sudo apt-get purge mysql-server
sudo apt-get clean
sudo apt-get autoremove
sudo apt-get install apache2 php5 mysql-server
..,它完美地工作了! (请注意,它可能会破坏您的配置文件,因此请备份它们!)
评论
如果您没有安装上述软件包,则无法解决问题。
–脑袋
13年8月31日在14:02
#13 楼
对我有用的是重新安装依赖项。在这种情况下,已安装的版本比最新版本(突触显示的内容)要新。实际上,这等效于允许突触降级依赖包。另一有用的方法是使用“ aptitude”:
root@arau:~# aptitude install libgfortran3
The following NEW packages will be installed:
libgfortran3{b}
0 packages upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 250 kB of archives. After unpacking 1 230 kB will be used.
The following packages have unmet dependencies:
libgfortran3 : Depends: gcc-4.8-base (= 4.8.2-19ubuntu1) but 4.8.4-2ubuntu1~14.04 is installed.
Internal error: found 2 (choice -> promotion) mappings for a single choice.
The following actions will resolve these dependencies:
Keep the following packages at their current version:
1) libgfortran3 [Not Installed]
Accept this solution? [Y/n/q/?] n
Internal error: found 2 (choice -> promotion) mappings for a single choice.
Internal error: found 2 (choice -> promotion) mappings for a single choice.
The following actions will resolve these dependencies:
Downgrade the following packages:
1) cpp-4.8 [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]
2) gcc-4.8 [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]
3) gcc-4.8-base [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]
4) libasan0 [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]
5) libatomic1 [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]
6) libgcc-4.8-dev [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]
7) libgomp1 [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]
8) libitm1 [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]
9) libquadmath0 [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]
10) libstdc++6 [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]
11) libtsan0 [4.8.4-2ubuntu1~14.04 (now) -> 4.8.2-19ubuntu1 (trusty)]
Accept this solution? [Y/n/q/?] y
评论
它几乎没有什么新的,基本上与您可以在此处从最高评价的答案中撤出的内容以及随后的答案相同...
–JoKeR
2015年4月19日在21:10
是的,但是有无数种解决方案,我只是简单地提到对我有用的解决方案。
–鲍勃·尤普拉特(Bob Yoplait)
15年8月19日在17:11
#14 楼
如果出现这样的错误:这是告诉您软件包已经安装,但尚未安装需要工作的所有其他软件包。您应该可以通过运行以下命令来解决此问题:
sudo apt-get -f install
(此命令应自动安装未满足的依赖项。)
或类似的东西这个(带有相关的软件包):
sudo apt-get install click curl dpkg-dev python-lzma python-requests imagemagick ubuntu-dev-tools
但是如果最终出现这种错误:
然后可以搜索在此处或此处安装它们的方法。在上面的示例中,您应该能够找到这样的页面,然后使用PPA或为32位安装.deb或为64位安装.deb。
评论
忘记确切的软件包名称。这与这个问题无关。我正在尝试创建一个规范的问题。因此,确切的软件包与该特定实例无关。实际上,“确切的包裹名称”虽然与您的问题无关,但在这方面与任何个人的问题都极为相关。通常,解决此问题的最佳第一步是确定pkg1和pkg2的来源。答案似乎忽略了这一点,否则大多数答案都很好。另外没有指出的是,在很多情况下(即使不是大多数情况下),“要安装
@doug添加它作为答案而不是评论,这非常好! :)
@Braiam Whaaaat确实有一个要点,这个问题不是PPA特有的,很多答案也不是。我知道前两个答案会使其他答案有些不知所措,但是我不确定改变问题的性质是否是正确的解决方案,尤其是因为您取消了其他答案。由于没有更好的答案,所以我现在就离开它。但这是需要考虑的事情。
哦,我的疑难排解问题在哪里? :D