我正在使用内核版本 4.1.7-hardened-r1 运行 Gentoo Hardened。当我第一次设置我的系统时,我能够顺利地出现 Chromium。然而,我最近发布了emerge --sync
一个世界更新,现在 Chromium 不会因为这个错误而更新。
rockshooter /etc/portage # emerge -aNDu --with-bdeps=y @world
These are the packages that would be merged:
Calculating dependencies... done!
WARNING: One or more updates/rebuilds have been skipped due to a dependency conflict:
dev-libs/libxml2:2
(dev-libs/libxml2-2.9.2-r4:2/2::gentoo, ebuild scheduled for merge) conflicts with
dev-libs/libxml2:=[icu] required by (www-client/chromium-48.0.2564.82:0/0::gentoo, installed)
^^^
dev-libs/libxml2:2/2=[icu] required by (www-client/chromium-48.0.2564.82:0/0::gentoo, installed)
^^^
Nothing to merge; quitting.
在设置 Gentoo 之前,我在 VM 上进行了测试,发现了一个常见错误,即 Chromium、libxml、qt-webkit 和 ICU 在 Portage 上无法正常运行,所以我认为这只是全局设置的问题icu
使用标志。然而......事实证明,我不仅没有看到 qt-webkit 成为冲突的一部分,而且我也做已USE="icu"
在我的 make.conf 中设置。
CFLAGS="-O2 -pipe -march=native"
CXXFLAGS="${CFLAGS}"
ACCEPT_LICENSE="-* @FREE CC-Sampling-Plus-1.0"
ACCEPT_KEYWORDS="amd64"
FEATURES="webrsync-gpg ccache parallel-fetch userfetch"
PORTAGE_GPG_DIR="/var/lib/gentoo/gkeys/keyrings/gentoo/release"
CCACHE_SIZE="4G"
CHOST="x86_64-pc-linux-gnu"
CPU_FLAGS_X86="aes avx fma3 fma4 mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 xop"
USE="${CPU_FLAGS_X86} gif jpeg png tiff apng java alsa libressl icu"
LINGUAS="en es es_LA fr de"
现在我很困惑,因为我不知道如何修复这个更新阻止程序。我确实已经USE="icu"
设置了 make.conf 并且我没有看到 qt-webkit 成为冲突的一部分 - 知道发生了什么吗?
答案1
问题解决了。如果我没记错的话,我想我通过运行解决了这个问题emerge --depclean
,revdep-rebuild
然后重新出现卸载的软件包(因为其中两个是 radeon 显示驱动程序和 evdev X 输入驱动程序)。
答案2
对于尝试出现 Chromium 和 KDE 内容时出现的明显阻塞,另请参阅:https://wiki.gentoo.org/wiki/Qt/FAQ#qtwebkit_vs_chromium_block_caused_by_icu
也就是说,启用或禁用 qtwebkit 的这两个 USE 标志:
# In package.use:
dev-qt/qtwebkit gstreamer icu
# OR
dev-qt/qtwebkit -gstreamer -icu