# emerge -pqv '=x11-libs/wxGTK-3.2.8::gentoo' [ebuild U ] x11-libs/wxGTK-3.2.8 [3.2.7-r1] USE="X curl doc gstreamer keyring libnotify lzma opengl sdl spell tiff wayland webkit -debug (-pch) -test" ABI_X86="32 (64) (-x32)" # emerge --info '=x11-libs/wxGTK-3.2.8::gentoo' Portage 3.0.68 (python 3.13.3-final-0, default/linux/amd64/23.0/desktop/gnome/systemd, gcc-15, glibc-2.41-r2, 6.14.6-gentoo-amd64 x86_64) ================================================================= System Settings ================================================================= System uname: Linux-6.14.6-gentoo-amd64-x86_64-13th_Gen_Intel-R-_Core-TM-_i7-1370P-with-glibc2.41 KiB Mem: 65392136 total, 4058656 free KiB Swap: 8388604 total, 7755164 free Timestamp of repository gentoo: Tue, 13 May 2025 03:15:00 +0000 Head commit of repository gentoo: 283366d7d60ed86f2fd411be3ff64357931bec80 Timestamp of repository HomeAssistantRepository: Mon, 19 Aug 2024 18:34:04 +0000 Head commit of repository HomeAssistantRepository: b0506a52160937fa564a4ed5724866ea81f3bb2d Head commit of repository SarahMiaOverlay: 8f9408f4c6521b226c08bcdaf774b075cc2ff4cd Head commit of repository brave-overlay: faf80274a7ff0dc62417777cca8d2e467bbf97b9 Head commit of repository elementary: 208876f73d9796cbd8663cbc2601e6deda7376da Timestamp of repository guru: Sat, 10 May 2025 20:25:05 +0000 Head commit of repository guru: b3e6db0846bfcb6cbeb5acf5c7fb12c12b60d1e9 Head commit of repository inode64-overlay: 83883b0d38be1ebcc36eb80ae445e428ebad11b8 Head commit of repository kde: 1370b0ed0b30b9f8ece0998a26d9c8c7a7d7e5d2 Head commit of repository kodi-overlay: 05abbd2f1760ac237cc7f4f4b86a1f250fd384e1 Head commit of repository pentoo: f0eaf1d431aaa6673346e2065f2b4f88dda48c30 Head commit of repository torbrowser: 40d37b12e1ab910f539707fd86e4a0ac68c45658 sh bash 5.2_p37-r3 ld GNU ld (Gentoo 2.44 p1) 2.44.0 ccache version 4.11.3 [enabled] app-misc/pax-utils: 1.3.8::gentoo app-shells/bash: 5.2_p37-r3::gentoo dev-build/autoconf: 2.13-r8::gentoo, 2.72-r1::gentoo dev-build/automake: 1.17-r2::gentoo dev-build/cmake: 3.31.7-r1::gentoo dev-build/libtool: 2.5.4::gentoo dev-build/make: 4.4.1-r100::gentoo dev-build/meson: 1.8.0::gentoo dev-java/java-config: 2.3.4::gentoo dev-lang/perl: 5.40.2::gentoo dev-lang/python: 3.10.17::gentoo, 3.11.12::gentoo, 3.12.10::gentoo, 3.13.3::gentoo, 3.13.3-r100::gentoo, 3.14.0_beta1::gentoo, 3.14.0_beta1-r100::gentoo dev-lang/rust: 1.85.1::gentoo, 1.86.0-r1::gentoo dev-lang/rust-bin: 1.81.0-r103::gentoo, 1.84.1-r2::gentoo, 1.85.1::gentoo, 1.86.0-r1::gentoo dev-util/ccache: 4.11.3::gentoo llvm-core/clang: 15.0.7-r3::gentoo, 16.0.6::gentoo, 17.0.6::gentoo, 18.1.8-r6::gentoo, 19.1.7::gentoo, 20.1.4::gentoo llvm-core/lld: 15.0.7::gentoo, 19.1.7::gentoo llvm-core/llvm: 15.0.7-r7::gentoo, 16.0.6-r5::gentoo, 17.0.6-r3::gentoo, 18.1.8-r6::gentoo, 19.1.7::gentoo, 20.1.4::gentoo sys-apps/baselayout: 2.17::gentoo sys-apps/sandbox: 2.46::gentoo sys-apps/systemd: 257.5::gentoo sys-devel/binutils: 2.44::gentoo sys-devel/binutils-config: 5.5.2::gentoo sys-devel/gcc: 13.3.1_p20250418::gentoo, 14.2.1_p20250419::gentoo, 15.1.0::gentoo sys-devel/gcc-config: 2.12.1::gentoo sys-kernel/linux-headers: 6.14::gentoo (virtual/os-headers) sys-libs/glibc: 2.41-r2::gentoo Repositories: gentoo location: /var/db/repos/gentoo sync-type: rsync sync-uri: rsync://gentoo.kopylovs.net/gentoo-portage priority: -1000 volatile: False sync-rsync-verify-max-age: 3 sync-rsync-verify-metamanifest: yes sync-rsync-verify-jobs: 1 sync-rsync-extra-opts: HomeAssistantRepository location: /var/db/repos/HomeAssistantRepository sync-type: git sync-uri: https://git.edevau.net/onkelbeh/HomeAssistantRepository.git masters: gentoo volatile: False SarahMiaOverlay location: /var/db/repos/SarahMiaOverlay sync-type: git sync-uri: https://gitlab.com/SarahMia/sarahmiaoverlay.git masters: gentoo volatile: False brave-overlay location: /var/db/repos/brave-overlay sync-type: git sync-uri: https://gitlab.com/jason.oliveira/brave-overlay.git masters: gentoo volatile: False elementary location: /var/db/repos/elementary sync-type: git sync-uri: https://github.com/pimvullers/elementary.git masters: gentoo volatile: False guru location: /var/db/repos/guru sync-type: git sync-uri: https://github.com/gentoo-mirror/guru.git masters: gentoo volatile: False inode64-overlay location: /var/db/repos/inode64-overlay sync-type: git sync-uri: https://github.com/inode64/inode64-overlay.git masters: gentoo volatile: False kde location: /var/db/repos/kde sync-type: git sync-uri: https://anongit.gentoo.org/git/proj/kde.git masters: gentoo volatile: False kodi-overlay location: /var/db/repos/kodi-overlay sync-type: git sync-uri: https://github.com/kodi-overlay/kodi-overlay.git masters: gentoo volatile: False pentoo location: /var/db/repos/pentoo sync-type: git sync-uri: https://github.com/pentoo/pentoo-overlay.git masters: gentoo volatile: False torbrowser location: /var/db/repos/torbrowser sync-type: git sync-uri: https://github.com/MeisterP/torbrowser-overlay.git masters: gentoo volatile: False Binary Repositories: gentoobinhost priority: 1 sync-uri: https://distfiles.gentoo.org/releases/amd64/binpackages/23.0/x86-64 ACCEPT_KEYWORDS="amd64 ~amd64" ACCEPT_LICENSE="* -@EULA android AnyDesk-TOS geekbench google-chrome Intel-SDP microsoft-edge Microsoft-vscode NVIDIA-CUDA NVIDIA-SDK OPERA-2018 PUEL-12 RAR TeamViewer Vivaldi" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=native -O2 -pipe -fomit-frame-pointer" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /opt/sonar/conf /opt/zookeeper-bin/conf /usr/lib64/libreoffice/program/sofficerc /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/php/apache2-php8.2/ext-active/ /etc/php/apache2-php8.3/ext-active/ /etc/php/apache2-php8.4/ext-active/ /etc/php/cgi-php8.2/ext-active/ /etc/php/cgi-php8.3/ext- tive/ /etc/php/cgi-php8.4/ext-active/ /etc/php/cli-php8.2/ext-active/ /etc/php/cli-php8.3/ext-active/ /etc/php/cli-php8.4/ext-active/ /etc/php/fpm-php8.2/ext-active/ /etc/php/fpm-php8.3/ext-active/ /etc/php/fpm-php8.4/ext-active/ /etc/php/phpdbg-php8.2/ext-active/ /etc/php/phpdbg-php8. ext-active/ /etc/php/phpdbg-php8.4/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c" CXXFLAGS="-march=native -O2 -pipe -fomit-frame-pointer" DISTDIR="/var/cache/distfiles" 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="-march=native -O2 -pipe -fomit-frame-pointer" FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs binpkg-multi-instance buildpkg-live ccache config-protect-if-modified distlocks ebuild-locks export-pms-vars fixlafiles ipc-sandbox merge-sync merge-wait multilib-strict network-sandbox news parallel-fetch pid-sandbo pkgdir-index-trusted preserve-libs protect-owned qa-unresolved-soname-deps sandbox strict strict-keepdir unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync warn-on-large-env xattr" FFLAGS="-march=native -O2 -pipe -fomit-frame-pointer" GENTOO_MIRRORS="http://mirror.isoc.org.il/pub/gentoo/ https://mirror.eu.oneandone.net/linux/distributions/gentoo/gentoo/" LANG="en_US.utf8" LC_ALL="en_US.UTF-8" LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,-z,pack-relative-relocs" LEX="flex" MAKEOPTS="-j10" PKGDIR="/var/cache/binpkgs" PORTAGE_CONFIGROOT="/" 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" RUSTFLAGS=" -C target-cpu=native" SHELL="/bin/bash" USE="X a52 aac accessibility acl acpi activities alsa amd64 apparmor audit bash-completion berkdb bidi bluetooth branding brotli btrfs bzip2 cairo cdda cdr cet cli colord crypt cryptsetup cuda cups curl dbus designer device-mapper doc dri drm dts dvd dvdr eds emacs encode evdev evo exa les exif experimental ffmpeg flac fortran fuse gamepad gdbm gdk-pixbuf gif git gmp gnome gnome-keyring gnome-online-accounts gnome-shell gnutls go gpg gpm gstreamer gtk gtk-doc gui hscolour html http iconv icu idn introspection iodbc ios ipv6 jack java javascript jemalloc joystick jpeg son kde kerberos keyring lcms ldap libnotify libtirpc lm-sensors lua lvm lz4 lzma lzo mad man mbedtls mng mongodb mp3 mp4 mpeg mpi multilib multimedia mysql nas nautilus ncurses netlink network networkmanager nfs nls nss nvenc odbc offensive ogg opencl opengl openmp openssl pam pango p p pcre pdf perl pkcs11 plasma plugins png policykit postgres ppds pulseaudio python qml qt5 qt6 readline redis samba sasl screencast sdl seccomp semantic-desktop snmp sound source speech spell sqlite ssl startup-notification svg symlink sysprof systemd tcl telemetry test-rust threads t f tk tools tpm tracker truetype udev udisks unicode upower usb utils v4l vaapi vala vdpau vim-syntax vnc vorbis vulkan wayland webengine webkit webp wifi wxwidgets x264 xattr xcb xft xinerama xml xv xvid yaml zeroconf zfs zip zlib zsh-completion zstd" ABI_X86="64 32" ADA_TARGET="gcc_14 APACHE2_MODULES="access_compat actions alias auth_basic auth_digest authn_anon authn_core authn_dbd authn_dbm authn_file authn_socache authz_core authz_dbd authz_dbm authz_groupfile authz_host authz_owner authz_user autoindex brotli cache cgi cgid charset_lite dav dav_fs dav_lock dbd d late dir env expires ext_filter file_cache filter headers http2 ident imagemap include info log_config logio mime mime_magic negotiation ratelimit reqtimeout rewrite session session_cookie session_crypto session_dbd setenvif socache_shmcb speling status substitute unique_id unixd userd usertrack version vhost_alias watchdog xml2enc" APACHE2_MPMS="worker" CALLIGRA_FEATURES="karbon sheets stage words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx avx2 f16c fma3 mmx mmxext pclmul popcnt rdrand sha sse sse2 sse3 sse4_1 sse4_2 sse3 vpclmulqdq" 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="efi-64" GUILE_SINGLE_TARGET="3-0" GUILE_TARGET "3-0" INPUT_DEVICES="evdev joystick libinput" KERNEL="linux" L10N="en en-US he ru" LCD_DEVICES="bayrad cfontz glk hd44780 lb216 lcdm001 mtxorb text" LIBREOFFICE_EXTENSIONS="nlpsolver scripting-beanshell scripting-javascript wiki-publisher" LUA_SINGLE_TARGET="lua5-4" LUA_TARGETS="lua5-1 ua5-4" NGINX_MODULES_HTTP="access addition auth_basic auth_ldap auth_pam auth_request autoindex brotli browser charset dav dav_ext echo empty_gif fancyindex fastcgi flv geo geoip geoip2 grpc gunzip gzip image_filter javascript limit_conn limit_req map memc memcached metrics mirror mp4 rl proxy push_stream referer rewrite scgi split_clients ssi stub_status upload_progress upstream_check upstream_hash upstream_ip_hash upstream_keepalive upstream_least_conn upstream_zone userid uwsgi vhost_traffic_status vod xslt" NGINX_MODULES_MAIL="imap pop3 smtp" NGINX_MODULES_STREA "access geo geoip geoip2" OFFICE_IMPLEMENTATION="libreoffice" PERL_FEATURES="ithreads quadmath" PHP_TARGETS="php8-2 php8-3" POSTGRES_TARGETS="postgres16 postgres17" PYTHON_SINGLE_TARGET="python3_13" PYTHON_TARGETS="python3_13 python3_10 python3_11 python3_12 python3_13t python3_14 pyth 3_14t" RUBY_TARGETS="ruby32 ruby33 ruby34" UWSGI_PLUGINS="alarm_curl cache carbon cheaper_busyness clock_monotonic clock_realtime corerouter curl_cron dumbloop echo emperor_amqp emperor_pg emperor_zeromq fastrouter forkptyrouter geoip graylog2 http ldap legion_cache_fetch logcrypto log le logpipe logsocket mongodblog nagios notfound pam ping rados rawrouter redislog router_access router_basicauth router_cache router_expires router_hash router_http router_memcached router_metrics router_redirect router_redis router_rewrite router_spnego router_static router_uwsgi rout _xmldir rpc rrdtool rsyslog signal spooler sqlite ssi sslrouter stats_pusher_statsd symcall syslog systemd_logger transformation_chunked transformation_gzip transformation_offload transformation_tofile transformation_toupper tuntap ugreen webdav xattr xslt zabbix zergpool" VIDEO_CARDS= ntel fbdev vesa nvidia" 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, EMERGE_DEFAULT_OPTS, EXTRA_ECONF, F77FLAGS, FC, GCOV, GPROF, INSTALL_MASK, LD, LFLAGS, LIBTOOL, LINGUAS, MAKE, MAKEFLAGS, NM, OBJCOPY, OBJDUMP, PORTAGE_BINHOST, PORTAGE_B ZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PYTHONPATH, RANLIB, READELF, SIZE, STRINGS, STRIP, YACC, YFLAGS
Created attachment 928652 [details] build.log.xz
x86_64-pc-linux-gnu-g++ -shared -fPIC -o /var/tmp/portage/x11-libs/wxGTK-3.2.8/work/wxWidgets-3.2.8-abi_x86_64.amd64/lib/libwx_baseu-3.2-gtk3.so.0.4.1 basedll_any.o basedll_appbase.o basedll_arcall.o basedll_arcfind.o basedll_archive.o basedll_arrstr.o basedll_base64.o basedll_clntdata.o basedll_cmdline.o basedll_config.o basedll_convauto.o basedll_datetime.o basedll_datetimefmt.o basedll_datstrm.o basedll_dircmn.o basedll_dynlib.o basedll_dynload.o basedll_encconv.o basedll_evtloopcmn.o basedll_extended.o basedll_ffile.o basedll_file.o basedll_fileback.o basedll_fileconf.o basedll_filefn.o basedll_filename.o basedll_filesys.o basedll_filtall.o basedll_filtfind.o basedll_fmapbase.o basedll_fs_arc.o basedll_fs_filter.o basedll_hash.o basedll_hashmap.o basedll_init.o basedll_intl.o basedll_ipcbase.o basedll_languageinfo.o basedll_list.o basedll_log.o basedll_longlong.o basedll_memory.o basedll_mimecmn.o basedll_module.o basedll_mstream.o basedll_numformatter.o basedll_object.o basedll_platinfo.o basedll_powercmn.o basedll_process.o basedll_regex.o basedll_stdpbase.o basedll_sstream.o basedll_stdstream.o basedll_stopwatch.o basedll_strconv.o basedll_stream.o basedll_string.o basedll_stringimpl.o basedll_stringops.o basedll_strvararg.o basedll_sysopt.o basedll_tarstrm.o basedll_textbuf.o basedll_textfile.o basedll_threadinfo.o basedll_time.o basedll_timercmn.o basedll_timerimpl.o basedll_tokenzr.o basedll_translation.o basedll_txtstrm.o basedll_unichar.o basedll_uri.o basedll_ustring.o basedll_variant.o basedll_wfstream.o basedll_wxcrt.o basedll_wxprintf.o basedll_xlocale.o basedll_xti.o basedll_xtistrm.o basedll_zipstrm.o basedll_zstream.o basedll_fswatchercmn.o basedll_fswatcherg.o basedll_common_secretstore.o basedll_lzmastream.o basedll_common_uilocale.o basedll_fdiodispatcher.o basedll_selectdispatcher.o basedll_appunix.o basedll_unix_dir.o basedll_dlunix.o basedll_epolldispatcher.o basedll_evtloopunix.o basedll_fdiounix.o basedll_unix_snglinst.o basedll_unix_stackwalk.o basedll_timerunx.o basedll_threadpsx.o basedll_utilsunx.o basedll_wakeuppipe.o basedll_fswatcher_kqueue.o basedll_unix_mimetype.o basedll_fswatcher_inotify.o basedll_unix_stdpaths.o basedll_unix_secretstore.o basedll_unix_uilocale.o basedll_event.o basedll_fs_mem.o basedll_msgout.o basedll_utilscmn.o -L/var/tmp/portage/x11-libs/wxGTK-3.2.8/work/wxWidgets-3.2.8-abi_x86_64.amd64/lib -Wl,-soname,libwx_baseu-3.2-gtk3.so.0 -Wl,-O1 -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,--undefined-version -pthread -Wl,-O1 -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,--undefined-version -pthread -Wl,-O1 -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,--undefined-version -Wl,--version-script,/var/tmp/portage/x11-libs/wxGTK-3.2.8/work/wxWidgets-3.2.8-abi_x86_64.amd64/version-script -Wl,--undefined-version -lz -lcurl -llzma -lm -lpcre2-32 -lz -lcurl -llzma -lm /usr/lib/gcc/x86_64-pc-linux-gnu/14/../../../../x86_64-pc-linux-gnu/bin/ld: /var/tmp/portage/x11-libs/wxGTK-3.2.8/work/wxWidgets-3.2.8-abi_x86_64.amd64/lib/libwx_baseu-3.2-gtk3.so.0.4.1: version node not found for symbol _ZN14wxTranslations19AddAvailableCatalogERK8wxString@WXU_3.2 /usr/lib/gcc/x86_64-pc-linux-gnu/14/../../../../x86_64-pc-linux-gnu/bin/ld: failed to set dynamic section sizes: bad value collect2: error: ld returned 1 exit status make: *** [Makefile:14300: /var/tmp/portage/x11-libs/wxGTK-3.2.8/work/wxWidgets-3.2.8-abi_x86_64.amd64/lib/libwx_baseu-3.2-gtk3.so.0.4.1] Error 1 make: *** Waiting for unfinished jobs.... * ERROR: x11-libs/wxGTK-3.2.8::gentoo failed (compile phase): * emake failed related https://bugs.gentoo.org/955865
Created attachment 928739 [details] Working ebuild I manage top escape this issue using --disable-symver but this ignore ELF symbol versioning which is less safe as production environment. Here it is my working build that I do not submit through the git because this is not the good and right solution though you can use it as immediate tap for the problem.
I just encountered this too - nothing to add except listing myself as another affected user and adding myself to CC
(In reply to Vladislav Mikhailikov from comment #3) > Created attachment 928739 [details] > Working ebuild > > I manage top escape this issue using --disable-symver but this ignore ELF > symbol versioning which is less safe as production environment. Here it is > my working build that I do not submit through the git because this is not > the good and right solution though you can use it as immediate tap for the > problem. We want the symbol versions here, see bug 955865.
(In reply to Sam James from comment #5) > (In reply to Vladislav Mikhailikov from comment #3) > > Created attachment 928739 [details] > > Working ebuild > > > > I manage top escape this issue using --disable-symver but this ignore ELF > > symbol versioning which is less safe as production environment. Here it is > > my working build that I do not submit through the git because this is not > > the good and right solution though you can use it as immediate tap for the > > problem. > > We want the symbol versions here, see bug 955865. I notice that this symbol occurs in two places: ./src/common/translation.cpp:wxELF_VERSION_COMPAT("_ZN14wxTranslations19AddAvailableCatalogERK8wxString", "3.2.3") ./src/common/translation.cpp:wxELF_VERSION_COMPAT("_ZN14wxTranslations19AddAvailableCatalogERK8wxString10wxLanguage", "3.2.6") and as you can see it has extension to either 3.2.3 or 3.2.6 but there is no symbol ending on 3.2. It look like we need to replace 3.2 with 3.2.3 somewhere.
Heh, this issue even mentioned inside the code of wxWidgets in ./include/wx/private/elfversion.h. It realy looks like someone forget to update 3.2 to 3.2.3.
These commits added support: * https://github.com/wxWidgets/wxWidgets/commit/ed70ea9e988cdff84d29c9e999d9fca3c08b681b * https://github.com/wxWidgets/wxWidgets/commit/f3eb19ce2efa839c0d3e8dc922445cbb49bd9e5d * https://github.com/wxWidgets/wxWidgets/commit/e6cafa6017602fd8d31a7f283d57c13009f2a817 * https://github.com/wxWidgets/wxWidgets/commit/ea91e3fb1249491b426ed45d904d80f7de61d8c4 * https://github.com/wxWidgets/wxWidgets/commit/a22e12486f454fc6e6d1383f96a4f5aa0f233657 Note that in version-script.in, we have: ``` # public symbols added in 3.2.6 (please keep in alphabetical order): @WX_VERSION_TAG@.6 { }; [...] @WX_VERSION_TAG@ { *; }; ``` In the ebuild, we have a bunch of seds. Commenting them out to test fixes it: `` ` # Versionating - sed -i \ - -e "s:\(WX_RELEASE = \).*:\1${WXRELEASE}:"\ - -e "s:\(WX_RELEASE_NODOT = \).*:\1${WXRELEASE_NODOT}:"\ - -e "s:\(WX_VERSION = \).*:\1${WXVERSION}:"\ - -e "s:aclocal):aclocal/wxwin${WXRELEASE_NODOT}.m4):" \ - "${versioned_makefiles[@]}" || die - - sed -i \ - -e "s:\(WX_VERSION=\).*:\1${WXVERSION}:" \ - -e "s:\(WX_RELEASE=\).*:\1${WXRELEASE}:" \ - -e "s:\(WX_SUBVERSION=\).*:\1${WXSUBVERSION}:" \ - -e '/WX_VERSION_TAG=/ s:${WX_RELEASE}:3.0:' \ - configure || die ``` It's breaking the version script.
Fixing that now, just doing some archaeology first.
(In reply to Sam James from comment #9) > Fixing that now, just doing some archaeology first. Introduced by: commit 188b68d6e0b5060c0d15687f89ff4bf1b382b609 Author: Ryan Hill <rhill@gentoo.org> Date: Mon Feb 8 19:18:16 2016 -0600 x11-libs/wxGTK: Add initial GTK+3 ebuild. Package-Manager: portage-2.2.27
(In reply to Sam James from comment #10) > (In reply to Sam James from comment #9) > > Fixing that now, just doing some archaeology first. > > Introduced by: > > commit 188b68d6e0b5060c0d15687f89ff4bf1b382b609 > Author: Ryan Hill <rhill@gentoo.org> > Date: Mon Feb 8 19:18:16 2016 -0600 > > x11-libs/wxGTK: Add initial GTK+3 ebuild. > > Package-Manager: portage-2.2.27 ... and went wrong at least once: commit 2005419f1916a48fee0a972452204913be3472c3 Author: Ryan Hill <rhill@gentoo.org> Date: Tue Feb 9 19:29:42 2016 -0600 x11-libs/wxGTK: Tone down versioning a bit WX_VERSION controls the output of `wx-config --version`. If this contains characters it confuses the WX_CONFIG_CHECK macro from wxwin.m4. WX_VERSION doesn't seem to affect the build or install, so try dropping -gtk3 from it. Package-Manager: portage-2.2.27
With 3.2.7-r1 keeping the sed and 3.2.8 dropping it: ``` $ diff -u /var/tmp/portage/x11-libs/wxGTK-3.2.7-r1/work/wxWidgets-3.2.7/configure /var/tmp/portage/x11-libs/wxGTK-3.2.8/work/wxWidgets-3.2.8/configure @@ -3869,12 +3871,12 @@ wx_major_version_number=3 wx_minor_version_number=2 -wx_release_number=7 +wx_release_number=8 wx_subrelease_number=0 -WX_RELEASE=3.2-gtk3 -WX_VERSION=3.2.7 -WX_SUBVERSION=3.2.7-gtk3 +WX_RELEASE=$wx_major_version_number.$wx_minor_version_number +WX_VERSION=$WX_RELEASE.$wx_release_number +WX_SUBVERSION=$WX_VERSION.$wx_subrelease_number WX_MSW_VERSION=$wx_major_version_number$wx_minor_version_number$wx_release_number [...] @@ -34221,7 +34344,7 @@ DEBUG_INFO=1 fi -WX_VERSION_TAG=`echo WX${lib_unicode_suffix}${WX_LIB_FLAVOUR}_3.0 | tr '[a-z]' '[A-Z]'` +WX_VERSION_TAG=`echo WX${lib_unicode_suffix}${WX_LIB_FLAVOUR}_${WX_RELEASE} | tr '[a-z]' '[A-Z]'` TOOLCHAIN_NAME="${TOOLKIT_DIR}${TOOLKIT_VERSION}${WIDGET_SET}${lib_unicode_suffix}${WX_LIB_FLAVOUR}-${WX_RELEASE}${HOST_SUFFIX}" ``` Oops.
Looks like it may date back to bug 536004 and maybe upstream were bad at remembering to crank versions in the past.
What really sucks now is fixing this correctly. ``` $ diff -u /var/tmp/portage/x11-libs/wxGTK-3.2.7-r1/work/wxWidgets-3.2.7-abi_x86_64.amd64/version-script /var/tmp/portage/x11-libs/wxGTK-3.2.8/work/wxWidgets-3. 2.8-abi_x86_64.amd64/version-script --- /var/tmp/portage/x11-libs/wxGTK-3.2.7-r1/work/wxWidgets-3.2.7-abi_x86_64.amd64/version-script 2025-05-14 00:44:10.875871634 +0100 +++ /var/tmp/portage/x11-libs/wxGTK-3.2.8/work/wxWidgets-3.2.8-abi_x86_64.amd64/version-script 2025-05-14 00:41:28.906237633 +0100 [...] -WXU_3.0.7 { +WXU_3.2.7 { extern "C++" { "wxAppConsoleBase::SetErrorExitCode(int)"; "wxAppConsoleBase::GetErrorExitCode() const"; @@ -35,47 +36,27 @@ [... many more ...] # symbols available since the beginning of this branch are only given # generic branch tag (don't remove this!): -WXU_3.0 { +WXU_3.2 { *; }; ``` We can't just drop those willynilly either. We need to drop the sed and then keep the symbols we completely made up accidentally via sed?
I think we might be able to quickly botch this by patching the affected symbols in https://github.com/wxWidgets/wxWidgets/commit/f3eb19ce2efa839c0d3e8dc922445cbb49bd9e5d#diff-a181aebc376cd7d46bf7a41845fea384d6195a9d7dd250efca3ba99941da9037 to have 3.0.x. In for a penny, in for a pound. Then can try actually fix this once wxGTK is building again and figure out proper ABI compatibility with our made up symbols as well as the upstream ones in a followup revision.
Anyway I build it with cmake-4.0.2 without any problems. Perhaps it is good idea to switch build chain to cmake and stick with it?
(In reply to Vladislav Mikhailikov from comment #16) > Anyway I build it with cmake-4.0.2 without any problems. Perhaps it is good > idea to switch build chain to cmake and stick with it? This is definitely NOT a good time to change the build system. There's a complete mess here and that may introduce more problems if it doesn't have parity.
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8baaa10af7d9944c5bf0fdfc0190cea6abbd296a commit 8baaa10af7d9944c5bf0fdfc0190cea6abbd296a Author: Sam James <sam@gentoo.org> AuthorDate: 2025-05-14 00:46:00 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2025-05-14 00:46:00 +0000 x11-libs/wxGTK: bodge ABI issues one more time See https://bugs.gentoo.org/955902#c8 onwards for details, but in summary, we have a bunch of seds in the ebuild, and they break the version script upstream supplies, resulting in made-up symbol versions that are Gentoo-specific (!!!) ``` sed -i \ -e "s:\(WX_VERSION=\).*:\1${WXVERSION}:" \ -e "s:\(WX_RELEASE=\).*:\1${WXRELEASE}:" \ -e "s:\(WX_SUBVERSION=\).*:\1${WXSUBVERSION}:" \ -e '/WX_VERSION_TAG=/ s:${WX_RELEASE}:3.0:' \ # <--- here configure || die ``` I question how much of the seds are necessary at all, but the mangling of the version script is a critical ABI issue as it makes us incompatible with other distributions and upstream binaries. However, fixing this correctly while also quickly to solve bug #955902 isn't really feasible, so.. Quickly bodge this by patching the affected symbols in https://github.com/wxWidgets/wxWidgets/commit/f3eb19ce2efa839c0d3e8dc922445cbb49bd9e5d to have 3.0.x. In for a penny, in for a pound. Then can try actually fix this once wxGTK is building again and figure out proper ABI compatibility with our made up symbols as well as the upstream ones in a followup revision. Filed bug #955936 for that proper fix. TL;DR: Leave proper fixing for it until later to fix the immediate emergency, extend the previous hack to newly-added symbols. Bug: https://bugs.gentoo.org/955936 Closes: https://bugs.gentoo.org/955902 Signed-off-by: Sam James <sam@gentoo.org> .../files/wxGTK-3.2.8-bodge-version-script.patch | 94 ++++++++++++++++++++++ x11-libs/wxGTK/wxGTK-3.2.8.ebuild | 22 ++--- 2 files changed, 107 insertions(+), 9 deletions(-)