Files
takana/recipes
sergioandClaude Opus 4.8 2e9e0b0cf9 pcre2: --with-pic + -fPIC — el .a no enlazaba dentro de un .so (el fondo del muro qtbase)
El --disable-jit anterior movió el error de pcre2_jit_compile.o a pcre2_compile.o (pso_list): el
fondo NO era el JIT, era que los objetos del .a se compilaban SIN -fPIC. qtbase construye Qt SHARED
(BUILD_SHARED_LIBS=ON, libQt6Core.so) y linkea libpcre2-16.a DENTRO de ese .so; un .a no-PIC lleva
relocaciones absolutas R_X86_64_64 que ld.lld rechaza en un objeto compartido. El propio
pcre2-shared.toml ya lo documentaba: 'el canónico es --disable-shared SIN --with-pic ⇒ su .a no
enlaza dentro de un .so'.

Fix: --with-pic + CFLAGS=-fPIC ⇒ objetos position-independent, linkables en .so y en PIE. Convive
con el -no-pie del ejecutable pcre2grep (el audit static lo quiere). JIT queda off igual (W^X +
tablas frágiles). VERIFICADO: qtbase pasó el punto de fallo (objeto 400) y compila de largo (490+),
sin el 'relocation cannot be used against local symbol'.

Es un fix raíz del modelo static↔dinámico (Capa 0 KDE): cualquier consumidor .so del pcre2 canónico
lo necesitaba.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 14:53:47 -04:00
..