From 8477ed31a1f7019e4b61834ddd57936bc19445f1 Mon Sep 17 00:00:00 2001 From: sergio Date: Sun, 12 Jul 2026 14:02:50 -0400 Subject: [PATCH] =?UTF-8?q?kde/Capa0:=20qtbase=20QT=5FFEATURE=5Fxcb=3DON?= =?UTF-8?q?=20RESUELTO=20=E2=80=94=20faltaba=20libXau/libXdmcp=20(gotcha?= =?UTF-8?q?=20.pc=20transitivo)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit El gate xkbcommon-x11 de Qt usa pkg_check_modules(IMPORTED_TARGET) que resuelve TODO el árbol Requires: xkbcommon-x11→xcb→(xau/xdmcp Requires.private de xcb.pc). Sin xau.pc/xdmcp.pc el target PkgConfig::XKB_COMMON_X11 no se creaba → XcbQpaPrivate abortaba. Agregados libXau+libXdmcp+xtrans a deps + PKG_CONFIG_PATH. Configure PASA con xcb=ON, qtbase compila la QPA xcb. Deuda Qt-xcb SALDADA. Cascada rebuild qtbase→Capa1→KF6→kio→plasma en marcha. Co-Authored-By: Claude Opus 4.8 --- recipes/incoming-kde/qtbase.toml | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/recipes/incoming-kde/qtbase.toml b/recipes/incoming-kde/qtbase.toml index 534e1b23..bf889a6c 100644 --- a/recipes/incoming-kde/qtbase.toml +++ b/recipes/incoming-kde/qtbase.toml @@ -64,7 +64,9 @@ cmake -B build -G Ninja -Wno-dev \ -DQT_FEATURE_journald=OFF \ -DQT_FEATURE_icu=OFF \ -DQT_FEATURE_vulkan=OFF \ - -DQT_FEATURE_xcb=OFF \ + -DQT_FEATURE_xcb=ON \ + -DQT_FEATURE_xcb_xlib=ON \ + -DQT_FEATURE_xlib=ON \ -DQT_FEATURE_libproxy=OFF \ -DQT_FEATURE_cups=OFF \ -DQT_FEATURE_libinput=OFF \ @@ -103,14 +105,16 @@ build = [ "pcre2", "zlib", "wayland", "wayland-protocols", "libxkbcommon", "mesa", "openssl", + # Cadena Qt-xcb (QT_FEATURE_xcb=ON): la QPA X11 de Qt. libxkbcommon aquí es la variante enable-x11 + # (override incoming-kde) que provee libxkbcommon-x11.so + xkbcommon-x11.pc. **CRÍTICO: libXau+libXdmcp** + # — el gate `xkbcommon-x11` de Qt usa `pkg_check_modules(IMPORTED_TARGET)` que resuelve TODO el árbol + # Requires: xkbcommon-x11→xcb→(xau,xdmcp Requires.private de xcb.pc). Sin xau.pc/xdmcp.pc el target + # PkgConfig::XKB_COMMON_X11 NO se crea y XcbQpaPrivate aborta. (Gotcha .pc transitivo, mismo de todo + # consumidor de xcb.) PKG_CONFIG_PATH explícito arriba p/ que pkg-config vea /usr/lib+share/pkgconfig. + "libxcb", "libXau", "libXdmcp", "libX11", "libXext", "libXrender", "libXi", "libXfixes", + "xcb-util", "xcb-util-image", "xcb-util-renderutil", "xcb-util-cursor", + "xcb-util-keysyms", "xcb-util-wm", "xorgproto", "xtrans", ] -# QT-XCB DIFERIDO (WIP): la cadena enabler está sellada (xcb-util-{image,renderutil,cursor} + libX{ext, -# render,i,fixes} + libxkbcommon-x11 override) pero activar QT_FEATURE_xcb=ON falla en configure con -# `target_link_libraries(XcbQpaPrivate) → PkgConfig::XKB_COMMON_X11 not found`: Qt 6.11 no crea el target -# imported de xkbcommon-x11 pese a que el .pc existe y su cadena Requires (xkbcommon + xcb + xcb-xkb) -# resuelve, y con PKG_CONFIG_PATH explícito. Es un detalle del build-system de Qt (feature xkbcommon_x11 / -# system_xkbcommon) a investigar — probable patch al CMakeLists de la QPA xcb o flag QT_FEATURE específico. -# Al saldarlo: reañadir feature xcb=ON/xcb_xlib=ON/xlib=ON + las deps X11 arriba + PKG_CONFIG_PATH ⇒ cascada. # NOTA gate (ADR 0011, tensión estático↔dinámico): libQt6Core.so LINKEA bien con las deps estáticas # del closure (glib/pcre2 son PIC-compatibles; zlib entra como libz.so). Lo que ROMPE el .so son libs # selladas como archive estático SIN -fPIC. Apagado para el gate (una ventana Qt no los necesita):