[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#882151: apt is having trouble resolving dependencies of libgtk-3-dev in sid



On Sun, Nov 19, 2017 at 09:03:12AM -0800, Daniel Schepler wrote:
> Package: apt
> Version: 1.6~alpha5
> Severity: important
> X-Debbugs-CC: pkg-gnome-maintainers@lists.alioth.debian.org
> Affects: libgtk-3-dev
> 
> Recently, in pbuilder builds on my machine, apt has been having
> trouble figuring out how to install libgtk-3-dev.  Debugging within a
> "pbuilder login" session shows:
> 
> root@frobozz:/# apt install libgtk-3-dev
> 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:
> libgtk-3-dev : Depends: gir1.2-gtk-3.0 (= 3.22.26-1) but it is not
> going to be installed
> E: Unable to correct problems, you have held broken packages.
> 
> The strange thing is, if I try to dig into what the problem is with
> "apt install libgtk-3-dev gir1.2-gtk-3.0", then the installation is
> successful.  So the package is actually installable, it's just that
> for some reason apt is having difficulties figuring out the
> installation set.

Could you please provide the appropriate debugging output:

### Dependency resolution

APT works in its internal resolver in two stages: First all packages are visited
and marked for installation, keep back or removal. Option `Debug::pkgDepCache::Marker`
shows this. This also decides which packages are to be installed to satisfy dependencies,
which can be seen by `Debug::pkgDepCache::AutoInstall`. After this is done, we might
be in a situation in which two packages want to be installed, but only on of them can be.
It is the job of the pkgProblemResolver to decide which of two packages 'wins' and can
therefore decide what has to happen. You can see the contenders as well as their fight and
the resulting resolution with `Debug::pkgProblemResolver`.


(README.md)

Thanks!


-- 
debian developer - deb.li/jak | jak-linux.org - free software dev
ubuntu core developer                              i speak de, en


Reply to: