Dependency conflict while upgrading Gentoo

Dependency conflict while upgrading Gentoo

When I tried to upgrade my Gentoo system, I had got following errors:

WARNING: One or more updates/rebuilds have been skipped due to a dependency conflict:

sys-libs/zlib:0

  (sys-libs/zlib-1.2.11-r1:0/1::gentoo, ebuild scheduled for merge) conflicts with
    sys-libs/zlib[minizip] required by (dev-qt/qtwebengine-5.7.1-r2:5/5.7::gentoo, installed)
                  ^^^^^^^ 
    sys-libs/zlib[minizip] required by (net-im/psi-1.3:0/0::gentoo, installed)
                  ^^^^^^^ 

media-libs/libvpx:0

  (media-libs/libvpx-1.5.0:0/3::gentoo, ebuild scheduled for merge) conflicts with
    >=media-libs/libvpx-1.5:=[svc] required by (dev-qt/qtwebengine-5.7.1-r2:5/5.7::gentoo, installed)
                              ^^^ 
    >=media-libs/libvpx-1.5:0/3=[svc] required by (dev-qt/qtwebengine-5.7.1-r2:5/5.7::gentoo, installed)
                                 ^^^ 

dev-qt/qtcore:5

  (dev-qt/qtcore-5.7.1-r3:5/5.7::gentoo, ebuild scheduled for merge) conflicts with
    ~dev-qt/qtcore-5.7.1[icu] required by (dev-qt/qtwebkit-5.7.1:5/5.7::gentoo, installed)
                         ^^^ 

media-video/ffmpeg:0

  (media-video/ffmpeg-3.3.5:0/55.57.57::gentoo, ebuild scheduled for merge) conflicts with
    >=media-video/ffmpeg-2.6.3[webp,v4l] required by (net-im/qtox-1.11.0:0/0::gentoo, installed)
                               ^^^^ ^^^ 

dev-libs/libpcre:3

  (dev-libs/libpcre-8.41:3/3::gentoo, ebuild scheduled for merge) conflicts with
    >=dev-libs/libpcre-8.38[pcre16,unicode] required by (dev-qt/qtcore-5.7.1-r3:5/5.7::gentoo, installed)
                            ^^^^^^         

app-text/poppler:0

  (app-text/poppler-0.56.0:0/67::dantrell-gnome, ebuild scheduled for merge) conflicts with
    app-text/poppler:=[qt5] required by (app-office/texmaker-4.5-r2:0/0::gentoo, installed)
                       ^^^ 
    app-text/poppler:0/67=[qt5] required by (app-office/texmaker-4.5-r2:0/0::gentoo, installed)
                           ^^^ 


!!! The following installed packages are masked:
- dev-vcs/monotone-1.0-r4::gentoo (masked by: package.mask)
/usr/portage/profiles/package.mask:
# Pacho Ramos <[email protected]> (28 Dec 2017)
# Multiple build failures and bugs (#634316), fails with recent lua
# (#434242), init script is buggy (#496724), bash completion files installed
# wrongly (#526280), fails with newer botan (#537572). Removal in a month.

For more information, see the MASKED PACKAGES section in the emerge
man page or refer to the Gentoo Handbook.

How can I resolve this dependency conflict?

答案1

What the ^^^'s indicate is that there are package dependencies which are expecting certain USE flags to be enabled. For example:

sys-libs/zlib:0

  (sys-libs/zlib-1.2.11-r1:0/1::gentoo, ebuild scheduled for merge) conflicts with
    sys-libs/zlib[minizip] required by (dev-qt/qtwebengine-5.7.1-r2:5/5.7::gentoo, installed)
                  ^^^^^^^ 
    sys-libs/zlib[minizip] required by (net-im/psi-1.3:0/0::gentoo, installed)

In the above example, qtwebengine and psi depend on zlib compiled with the minizip USE flag.

To address this, you need to add the expected USE flag(s) to your make.conf In older Gentoo installations the file is located at /etc/make.conf, and on newer installs at /etc/portage/make.conf.

This file contains a USE variable with a space-separated list of flags. So first check if the flag in question is in the list, but prefixed with a dash (-) which means to disable the flag. If so, you'll need to remove the dash to enable the flag. On the other hand, if the flag is not listed, then you simply need to add it.

相关内容