错误,pkgProblemResolver

sam*_*ami 4 package-management apt dependencies

我试图安装一些参考本文档的软件包:http : //wiki.friendlyarm.com/wiki/index.php/NanoPi_M1#Make_Your_Own_Debian

代码:

 sudo apt-get install libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386<br/>
Run Code Online (Sandbox Code Playgroud)

前两行安装成功
当我尝试运行第三行时,结果是这样的:

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.
 libgl1-mesa-glx:i386 : Depends: libglapi-mesa:i386 (= 10.1.3-0ubuntu0.6)
                        Recommends: libgl1-mesa-dri:i386 (>= 7.2)
 unity-control-center : Depends: libcheese-gtk23 (>= 3.4.0) but it is not going to be installed
                        Depends: libcheese7 (>= 3.0.1) but it is not going to be installed
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.
Run Code Online (Sandbox Code Playgroud)

我正在运行 ubuntu 14.04-64bit
我能解决这个问题吗

Jai*_*ime 6

我遇到了类似的问题,pkgProblemResolver当我尝试安装openssh-server.

问题可能是由于 (1) “保留软件包”导致安装错误并且您系统中的依赖项(即其他软件包)已损坏或丢失,或 (2) 您要安装的软件包与软件包不兼容你已经有了。

如果保留包有问题,您可以检测保留包并删除或取消保留它们

  1. 您可以使用确定保留包 dpkg --get-selections

    $ dpkg --get-selections | grep hold
      or
    $ apt-mark showhold
    
    Run Code Online (Sandbox Code Playgroud)
  2. 然后,您可以取消标记或删除保留包

    $ sudo apt-mark unhold package_name
      or
    $ sudo apt-get --purge remove package_name
    
    Run Code Online (Sandbox Code Playgroud)
  3. 最后,我建议自动删除未使用的包

    $ sudo apt-get autoremove
    
    Run Code Online (Sandbox Code Playgroud)

如果是依赖关系的问题,解决方案可能涉及删除和降级您已经拥有的一些包。您可以aptitude用来获取有关如何解决问题的建议。

  1. 首先,aptitude如果你没有它,你必须安装

    $ sudo apt-get install aptitude
    
    Run Code Online (Sandbox Code Playgroud)
  2. 然后,您可以运行指示您要安装的命令 openssh-server

    $ sudo aptitude install libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386
    
    Run Code Online (Sandbox Code Playgroud)
  3. 该程序将向您显示有关如何解决问题的建议。通常第一个解决方案不起作用。您可以按n请求新建议。按下y以接受安装openssh-server和降级其他一些软件包的解决方案。