E: 错误,pkgProblemResolver::Resolve 生成​​的中断,这可能是由保留的包引起的

RPi*_*ess 13 package-management apt dpkg glib

我一直在尝试安装 CoreBird Twitter 应用程序,并且在编译它时运气非常糟糕,然后我遇到了一个 deb(来自此处)并尝试以这种方式安装它。

但是,我收到此错误:

 corebird depends on libglib2.0-0 (>= 2.41.1); however:
  Package libglib2.0-0:amd64 is not configured yet.
 corebird depends on libgtk-3-0 (>= 3.13.7); however:
  Version of libgtk-3-0:amd64 on system is 3.10.8-0ubuntu1.4.
Run Code Online (Sandbox Code Playgroud)

因此,我尝试变得聪明并手动跟踪并安装这些库。我找到了正确的deb文件,但是当我跑dpkg -ilibglibDEB,我得到这个:

pkg: error processing package libglib2.0-0:amd64 (--install):
 package libglib2.0-0:amd64 2.42.0-2 cannot be configured because libglib2.0-0:i386 is at a different version (2.40.2-0ubuntu1)
Run Code Online (Sandbox Code Playgroud)

以及其他一些无法配置它的原因,因为 libglib2.0-0:am​​d64 是错误的版本。

这是我出错的地方。我想都没想就跑了sudo apt-get remove libglib2.0-0:amd64

所以,很明显,它造成了大量的依赖问题,并告诉我运行sudo apt-get -f install. 我这样做了,现在我明白了:

sudo apt-get -f install
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Correcting dependencies... failed.
The following packages have unmet dependencies:
 corebird : Depends: libgtk-3-0 (>= 3.13.7) but 3.10.8-0ubuntu1.4 is installed
 libglib2.0-0 : Breaks: libglib2.0-0:i386 (!= 2.42.0-2) but 2.40.2-0ubuntu1 is installed
 libglib2.0-0:i386 : Breaks: libglib2.0-0 (!= 2.40.2-0ubuntu1) but 2.42.0-2 is installed
 libglib2.0-bin : Depends: libglib2.0-0 (= 2.40.2-0ubuntu1) but 2.42.0-2 is installed
 libglib2.0-dev : Depends: libglib2.0-0 (= 2.40.2-0ubuntu1) but 2.42.0-2 is installed
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.
E: Unable to correct dependencies
Run Code Online (Sandbox Code Playgroud)

显然,glib在我删除了之前安装的 2.40.2 之后安装的2.42.0-2 软件包现在导致了各种问题。显然,这是一个问题。

有谁知道如何解决这个问题?

我的/var/log/dist-upgrade/apt.log文件是空的:

cat /var/log/dist-upgrade/apt.log
cat: /var/log/dist-upgrade/apt.log: No such file or directory
Run Code Online (Sandbox Code Playgroud)

并且该命令不dpkg --get-selections | grep hold返回任何内容:

$ dpkg --get-selections | grep hold
$
Run Code Online (Sandbox Code Playgroud)

编辑

这个问题不是重复的。aptitude即使我想安装也无法安装(同样的错误。)

Vel*_*kan 1

我会尝试这样做:

sudo apt-get remove corebird
sudo apt-get -f install
Run Code Online (Sandbox Code Playgroud)

然后确保一切恢复正常。

之后,将 repos 更改为/etc/apt/sources.listvivid通过 apt-get 获取所需的库。

corebird使用 dpkg安装。

/etc/apt/sources.listtrusty.


NoS*_*ion 0

摆弄终端,我随机想出了一个解决方案,如下:-

安装新立得包管理器

sudo apt-get install synaptic
Run Code Online (Sandbox Code Playgroud)

sudo synaptic现在通过开始或在终端上输入进入 Synaptic 包管理器

接下来,搜索具有未满足的依赖项的包。

将包标记为complete removal

点击Apply顶部

Synaptic 将首先解决未满足的依赖关系,然后完全删除该软件包,您可以稍后再次安装。

只要尝试一下,据我所知它应该有效。就我而言,它确实有效。


归档时间:

查看次数:

21644 次

最近记录:

5 年,9 月 前