Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 949679 - kde-plasma/kinfocenter-6.3.0 with USE="-vulkan": kcms/about-distro/src/GPUEntry.h:10:10: fatal error: QVulkanInstance: No such file or directory
Summary: kde-plasma/kinfocenter-6.3.0 with USE="-vulkan": kcms/about-distro/src/GPUEnt...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Gentoo KDE team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2025-02-12 17:50 UTC by Karl-Johan Karlsson
Modified: 2025-03-11 02:05 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log (build.log,84.65 KB, text/x-log)
2025-02-12 17:50 UTC, Karl-Johan Karlsson
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Karl-Johan Karlsson 2025-02-12 17:50:39 UTC
Created attachment 918856 [details]
build.log

When attempting to upgrade KDE Plasma from 6.2.5 to 6.3.0, kde-plasma/kinfocenter-6.3.0 fails to build with:

FAILED: kcms/about-distro/src/CMakeFiles/kcm_about-distro.dir/GPUEntry.cpp.o 
In file included from /var/tmp/portage/kde-plasma/kinfocenter-6.3.0/work/kinfocenter-6.3.0/kcms/about-distro/src/GPUEntry.cpp:7:
/var/tmp/portage/kde-plasma/kinfocenter-6.3.0/work/kinfocenter-6.3.0/kcms/about-distro/src/GPUEntry.h:10:10: fatal error: QVulkanInstance: No such file or directory
   10 | #include <QVulkanInstance>
      |          ^~~~~~~~~~~~~~~~~
compilation terminated.

This is a Thinkpad X220 with an Intel Core i7-2640M CPU and an Intel HD Graphics 3000 (SNB GT2) GPU, which does not support Vulkan, so the entire system is built with USE="-vulkan".

Looking at a system with a newer GPU which does support Vulkan, the QVulkanInstance header file comes from dev-qt/qtbase:

$ qfile /usr/include/qt6/QtGui/QVulkanInstance
dev-qt/qtbase: /usr/include/qt6/QtGui/QVulkanInstance


Portage 3.0.67 (python 3.12.9-final-0, default/linux/amd64/23.0/split-usr/hardened, gcc-14, glibc-2.41, 6.13.2-gentoo-x86_64 x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-6.13.2-gentoo-x86_64-x86_64-Intel-R-_Core-TM-_i7-2640M_CPU_@_2.80GHz-with-glibc2.41
KiB Mem:    16254992 total,  12384260 free
KiB Swap:   16777212 total,  16777212 free
Timestamp of repository gentoo: Wed, 12 Feb 2025 11:15:00 +0000
Head commit of repository gentoo: e59baeb5017114ce5d01073a367b484cd4f0007c
Head commit of repository creideiki: 15a2e54c1518de717cc3e468b5d88eb985d2ec7e

Timestamp of repository steam-overlay: Wed, 05 Feb 2025 18:48:29 +0000
Head commit of repository steam-overlay: 5b1fd31c48074c752648dd949fc7c6bc3fc20783

Timestamp of repository torbrowser: Tue, 11 Feb 2025 08:48:29 +0000
Head commit of repository torbrowser: 9e02e7b7873fa634ff2ab62bef230d0225eac4e1

sh bash 5.2_p37
ld GNU ld (Gentoo 2.44 p1) 2.44.0
app-misc/pax-utils:        1.3.8::gentoo
app-shells/bash:           5.2_p37::gentoo
dev-build/autoconf:        2.71-r7::gentoo, 2.72-r1::gentoo
dev-build/automake:        1.17-r1::gentoo
dev-build/cmake:           3.31.5::gentoo
dev-build/libtool:         2.5.4::gentoo
dev-build/make:            4.4.1-r100::gentoo
dev-build/meson:           1.7.0::gentoo
dev-lang/perl:             5.40.0-r1::gentoo
dev-lang/python:           3.12.9::gentoo, 3.13.2::gentoo, 3.13.2-r100::gentoo
dev-lang/rust:             1.84.1-r1::gentoo
llvm-core/clang:           19.1.7::gentoo
llvm-core/lld:             19.1.7::gentoo
llvm-core/llvm:            19.1.7::gentoo
sys-apps/baselayout:       2.17::gentoo
sys-apps/openrc:           0.56::gentoo
sys-apps/sandbox:          2.43::gentoo
sys-devel/binutils:        2.44::gentoo
sys-devel/binutils-config: 5.5.2::gentoo
sys-devel/gcc:             14.2.1_p20241221::gentoo
sys-devel/gcc-config:      2.12.1::gentoo
sys-kernel/linux-headers:  6.13::gentoo (virtual/os-headers)
sys-libs/glibc:            2.41::gentoo
Repositories:

gentoo
    location: /usr/portage
    sync-type: rsync
    sync-uri: rsync://rsync.europe.gentoo.org/gentoo-portage
    priority: -1000
    volatile: True
    sync-rsync-verify-max-age: 3
    sync-rsync-verify-metamanifest: yes
    sync-rsync-verify-jobs: 1
    sync-rsync-extra-opts: --timeout=10

creideiki
    location: /usr/local/portage
    sync-type: git
    sync-uri: https://github.com/creideiki/portage
    masters: gentoo
    volatile: True

steam-overlay
    location: /var/db/repos/steam-overlay
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/steam-overlay.git
    masters: gentoo
    volatile: False

torbrowser
    location: /var/db/repos/torbrowser
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/torbrowser.git
    masters: gentoo
    volatile: False

ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="@FREE"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt /var/bind"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-march=native -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="--alphabetical --keep-going --quiet-build=n --verbose-conflicts"
ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GDK_PIXBUF_MODULE_FILE GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR XDG_STATE_HOME"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs binpkg-multi-instance buildpkg buildpkg-live config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync merge-wait multilib-strict network-sandbox news parallel-fetch parallel-install pid-sandbox pkgdir-index-trusted preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-O1 -Wl,--hash-style=gnu -Wl,--enable-new-dtags"
LEX="flex"
MAKEOPTS="-j4"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_EXTRA_OPTS="--timeout=10"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/var/tmp"
SHELL="/bin/bash"
USE="X acl alsa amd64 bzip2 cairo cet crypt cups dbus dri dri3 egl elogind flac fontconfig gdbm gif glamor hardened harfbuzz iconv icu ipv6 jpeg kde kf6compat libplacebo libtirpc llvm lm-sensors mp3 multilib ncurses nls ogg opengl openmp pam pcre pic pie pipewire png policykit qml qt3support qt5 qt6 readline screencast seccomp split-usr ssl ssp test-rust tiff truetype udev udisks unicode upower vaapi vorbis vpx wayland x264 x265 xattr xcb xkb xtpax zlib" ABI_X86="64" ADA_TARGET="gcc_13" ALSA_CARDS="hda-intel" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_anon authn_dbm authn_file authz_dbm authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir env expires ext_filter file_cache filter headers include info log_config logio mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon sheets words" CAMERAS="canon" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax navcom oceanserver oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 tsip tripmate tnt ublox" GRUB_PLATFORMS="pc" GUILE_SINGLE_TARGET="3-0" GUILE_TARGETS="3-0" INPUT_DEVICES="evdev wacom libinput" KERNEL="linux" L10N="en en-US en-GB sv sv-SE" LCD_DEVICES="bayrad cfontz glk hd44780 lb216 lcdm001 mtxorb text" LLVM_SLOT="19" LLVM_TARGETS="BPF WebAssembly X86" LUA_SINGLE_TARGET="lua5-1" LUA_TARGETS="lua5-1" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php8-2" POSTGRES_TARGETS="postgres16" PYTHON_SINGLE_TARGET="python3_12" PYTHON_TARGETS="python3_12" QEMU_SOFTMMU_TARGETS="i386 x86_64" RUBY_TARGETS="ruby33 ruby34" SANE_BACKENDS="hp" VIDEO_CARDS="intel i965" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipp2p iface geoip fuzzy condition tarpit sysrq proto logmark ipmark dhcpmac delude chaos account"
Unset:  ADDR2LINE, AR, ARFLAGS, AS, ASFLAGS, CC, CCLD, CONFIG_SHELL, CPP, CPPFLAGS, CTARGET, CXX, CXXFILT, ELFEDIT, EXTRA_ECONF, F77FLAGS, FC, GCOV, GPROF, INSTALL_MASK, LANG, LC_ALL, LD, LFLAGS, LIBTOOL, LINGUAS, MAKE, MAKEFLAGS, NM, OBJCOPY, OBJDUMP, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PYTHONPATH, RANLIB, READELF, RUSTFLAGS, SIZE, STRINGS, STRIP, YACC, YFLAGS

=================================================================
                        Package Settings
=================================================================

kde-plasma/kinfocenter-6.2.5::gentoo was built with the following:
USE="-debug -gles2-only -handbook -usb" ABI_X86="(64)"

>>> Attempting to run pkg_info() for 'kde-plasma/kinfocenter-6.2.5'

dev-qt/qtbase-6.8.2-r1::gentoo was built with the following:
USE="X -accessibility -brotli concurrent cups -custom-cflags dbus -eglfs -evdev -gles2-only -gssapi -gtk gui icu -journald libinput libproxy -mysql network nls -oci8 -odbc opengl postgres -renderdoc -sctp sql sqlite ssl -syslog -test -tslib udev -vulkan wayland widgets xml (zstd)" ABI_X86="(64)"
CFLAGS="-O2 -pipe -march=x86-64-v2"
CXXFLAGS="-O2 -pipe -march=x86-64-v2"
Comment 1 Larry the Git Cow gentoo-dev 2025-02-12 21:08:44 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/proj/kde.git/commit/?id=5ebb193a67e8e508e1da61397fa0de1936c4299e

commit 5ebb193a67e8e508e1da61397fa0de1936c4299e
Author:     Andreas Sturmlechner <asturm@gentoo.org>
AuthorDate: 2025-02-12 21:07:58 +0000
Commit:     Andreas Sturmlechner <asturm@gentoo.org>
CommitDate: 2025-02-12 21:08:23 +0000

    kde-plasma/kinfocenter: Add missing dev-qt/qtbase:6[vulkan] USEdep
    
    Bug: https://bugs.gentoo.org/949679
    Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>

 kde-plasma/kinfocenter/kinfocenter-6.3.49.9999.ebuild | 2 +-
 kde-plasma/kinfocenter/kinfocenter-9999.ebuild        | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
Comment 2 Andreas Sturmlechner gentoo-dev 2025-02-18 19:20:19 UTC
fixed in 6.3.1
Comment 3 Alexander Wessel 2025-03-11 01:30:24 UTC
This is quite unfortunate, really.

It pulls in Vulkan and a ton of it's dependencies, just to tell kinfocenter (via QVulkanInstance.init()) that there is no graphics card that supports Vulkan...

Upstream, unfortunately, seems to be disinterested in restoring support for Qt6  compiled without -feature-vulkan, although this would be a rather minor change.

See https://bugs.kde.org/show_bug.cgi?id=501325

Was there any announcement that Vulkan is now a prerequisite to build Qt6 and/or KDE Plasma?! I am quite shocked, actually.

Maybe Qt upstream could be convinced to provide some kind of -feature-vulkan-stubs option where QVulkanInstance is built, but QVulkanInstance.init() simply returns false? Then again kinfocenter also depends on QVulkanFunctions and  VK_PHYSICAL_DEVICE_TYPE_*, and with the stance Harald is taking, possibly more in the future.

And all that in order to display that there is no actual Vulkan support on the system. Are there *any* other packages in KDE-Plasma and/or dependent on qt-base that require it to be built with vulkan enabled like this?

If I'd finish/polish my patch and maintain it, would the maintainers here be willing to commit it to the official ebuild? (Currently it's just a work-in-progress/stub that I made to find out which source files were dependent on Vulkan. It compiles, but won't link, see the upstream bug.) Locally, I don't really see myself enabling Vulkan on everything up the tree just for kinfocenter, so I guess I will finish that patch...
Comment 4 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2025-03-11 01:44:41 UTC
(In reply to Alexander Wessel from comment #3)
> If I'd finish/polish my patch and maintain it, would the maintainers here be
> willing to commit it to the official ebuild? (Currently it's just a
> work-in-progress/stub that I made to find out which source files were
> dependent on Vulkan. It compiles, but won't link, see the upstream bug.)
> Locally, I don't really see myself enabling Vulkan on everything up the tree
> just for kinfocenter, so I guess I will finish that patch...

I suggest submitting it upstream as a formal MR and seeing what they say (which is quite different from something incomplete, WIP on a bug). I don't think we're likely to include this downstream unless it's a backport of an accepted upstream change.