Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 936468

Summary: dev-lang/perl-5.38.2-r3 fails to build on x32
Product: Gentoo Linux Reporter: Sandino Araico Sanchez <sandino>
Component: Current packagesAssignee: Gentoo Perl team <perl>
Status: UNCONFIRMED ---    
Severity: normal CC: batyiev, sandino
Priority: Normal    
Version: unspecified   
Hardware: AMD64   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 393673    
Attachments: build log

Description Sandino Araico Sanchez 2024-07-21 20:15:24 UTC
x86_64-pc-linux-gnux32-gcc -Wl,-O1 -Wl,--as-needed -Wl,-z,pack-relative-relocs -o miniperl \
    opmini.o perlmini.o universalmini.o  gv.o toke.o perly.o pad.o regcomp.o regcomp_debug.o 
regcomp_invlist.o regcomp_study.o regcomp_trie.o regexec.o dump.o util.o mg.o reentr.o mro_co
re.o keywords.o builtin.o class.o hv.o av.o run.o pp_hot.o sv.o pp.o scope.o pp_ctl.o pp_sys.
o peep.o doop.o doio.o utf8.o taint.o deb.o globals.o perlio.o numeric.o mathoms.o locale.o p
p_pack.o pp_sort.o caretx.o dquote.o time64.o  miniperlmain.o  -ldl -lm -lcrypt -lutil -lc -l
pthread -lquadmath 
LD_LIBRARY_PATH=/usr/src/portage/dev-lang/perl-5.38.2-r3/work/perl-5.38.2 ./miniperl -w -Ilib
 -Idist/Exporter/lib -MExporter -e '<?>' || sh -c 'echo >&2 Failed to build miniperl.  Please
 run make minitest; exit 1'
Failed to build miniperl. Please run make minitest
make: *** [makefile:385: lib/buildcustomize.pl] Error 1
 * ERROR: dev-lang/perl-5.38.2-r3::gentoo failed (compile phase):
 *   emake failed


Reproducible: Always




emerge --info '=dev-lang/perl-5.38.2-r3::gentoo'
Portage 3.0.65 (python 3.12.3-final-0, default/linux/amd64/23.0/split-usr/x32, gcc-13, glibc-
2.39-r6, 4.9.135-vs2.3.9.8-dappersec-r6 x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-4.9.135-vs2.3.9.8-dappersec-r6-x86_64-AMD_Opteron_23xx_-Gen_3_Class_Opter
on-with-glibc2.39
KiB Mem:    16777216 total,  15278912 free
KiB Swap:    4194304 total,   4194304 free
Timestamp of repository gentoo: Sun, 21 Jul 2024 16:45:00 +0000
Head commit of repository gentoo: fa77d52a7ff39464c50707ca024725deab08b534
Head commit of repository KBrown-pub: 10cba3673fbc4b86d86750e409f4eaa6da520ae3

Timestamp of repository without-systemd: Thu, 19 Oct 2023 21:01:54 +0000
Head commit of repository without-systemd: 7f244f29774d91e6ad9b914d019653a73dfe3a8c

sh bash 5.2_p26-r6
ld GNU ld (Gentoo 2.42 p3) 2.42.0
app-misc/pax-utils:        1.3.7::gentoo
app-shells/bash:           5.2_p26-r6::gentoo
dev-build/autoconf:        2.71-r7::gentoo
dev-build/automake:        1.16.5-r2::gentoo
dev-build/cmake:           3.28.5::gentoo
dev-build/libtool:         2.4.7-r4::gentoo
dev-build/make:            4.4.1-r1::gentoo
dev-build/meson:           1.4.1::gentoo
dev-lang/perl:             5.38.2-r3::gentoo
dev-lang/python:           3.12.3-r1::gentoo
sys-apps/baselayout:       2.15::gentoo
sys-apps/openrc:           0.54.2::gentoo
sys-apps/sandbox:          2.38::gentoo
sys-devel/binutils:        2.42-r1::gentoo
sys-devel/binutils-config: 5.5::gentoo
sys-devel/gcc:             13.3.1_p20240614::gentoo
sys-devel/gcc-config:      2.11::gentoo
sys-kernel/linux-headers:  6.6-r1::gentoo (virtual/os-headers)
sys-libs/glibc:            2.39-r6::gentoo
Repositories:

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

KBrown-pub
    location: /usr/local/1101/KBrown-pub
    sync-type: git
    sync-uri: https://git.softwarelibre.mx/KBrown/gentoo-overlay.git
    masters: gentoo
    volatile: True

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

Binary Repositories:

binhost
    priority: 9999
    sync-uri: https://mirror.leaseweb.com/gentoo/releases/amd64/binpackages/23.0/x32

ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="@FREE"
CBUILD="x86_64-pc-linux-gnux32"
CFLAGS="-O0 -ggdb"
CHOST="x86_64-pc-linux-gnux32"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/gconf /etc/gentoo-release /etc
/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-O0 -ggdb"
DISTDIR="/usr/portage/distfiles"
ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GDK_PIXBUF_MODULE_FILE GOBIN GOPATH PE
RL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CO
NFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR XDG_STATE_HOME"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs buildpkg buildpkg-live 
compress-build-logs compress-index config-protect-if-modified distlocks ebuild-locks fixlafil
es getbinpkg merge-sync merge-wait multilib-strict news nostrip parallel-fetch pkgdir-index-t
rusted preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms strict unknown-f
eatures-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"
LEX="flex"
LINGUAS=" en en_GB en_US es es_AR es_ES es_MX "
MAKEOPTS="-j1"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compr
ess --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles
 --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/usr/src"
SHELL="/bin/bash"
USE="acl amd64 berkdb bzip2 cacert cet cracklib crypt gdbm git gmp hardened iconv icu idn ipv
6 leaps-timezone libtirpc logrotate lz4 lzma lzo minizip multilib ncurses nls openmp pax-kern
el pcre postgres readline sctp seccomp split-usr sqlite ssl system-zlib test-rust unicode ver
ify-sig xattr xml xmss zlib" ABI_X86="x32" ADA_TARGET="gcc_12" APACHE2_MODULES="authn_core au
thz_core socache_shmcb unixd actions alias auth_basic authn_anon authn_dbm authn_file authz_d
bm 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 log
io mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vh
ost_alias" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="df interface irq load me
mory rrdtool swap syslog" CPU_FLAGS_X86="aes avx avx2 mmx mmxext pclmul sse sse2 sse3 ssse3 s
se4_1 sse4_2" CURL_SSL="openssl" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermo
re fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 ntrip navcom oceanserver oncore r
tcm104v2 rtcm104v3 sirf skytraq superstar2 tsip tripmate tnt ublox" INPUT_DEVICES="libinput" 
KERNEL="linux" L10N="en en-GB en-US es es-419 es-ES es-MX" LCD_DEVICES="bayrad cfontz glk hd4
4780 lb216 lcdm001 mtxorb text" LUA_SINGLE_TARGET="lua5-1" LUA_TARGETS="lua5-1" OFFICE_IMPLEM
ENTATION="libreoffice" PERL_FEATURES="ithreads quadmath" PHP_TARGETS="php8-2" POSTGRES_TARGET
S="postgres15" PYTHON_SINGLE_TARGET="python3_12" PYTHON_TARGETS="python3_12" RUBY_TARGETS="ru
by31 ruby32" VIDEO_CARDS="amdgpu fbdev intel nouveau radeon radeonsi vesa dummy" XTABLES_ADDO
NS="quota2 psd pknock lscan length2 ipv4options ipp2p iface geoip fuzzy condition tarpit sysr
q 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_M
ASK, LANG, LC_ALL, LD, LFLAGS, LIBTOOL, MAKE, MAKEFLAGS, NM, OBJCOPY, OBJDUMP, PORTAGE_BINHOS
T, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPT
S, PYTHONPATH, RANLIB, READELF, RUSTFLAGS, SIZE, STRINGS, STRIP, YACC, YFLAGS

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

dev-lang/perl-5.38.2-r3::gentoo was built with the following:
USE="gdbm -berkdb -doc -minimal" ABI_X86="(x32)" PERL_FEATURES="(-debug) -ithreads -quadmath"
CFLAGS="-O2 -pipe -fno-strict-aliasing"
CXXFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs binpkg-multi-instance b
uildpkg buildpkg-live clean-logs config-protect-if-modified distlocks ebuild-locks fixlafiles
 ipc-sandbox merge-sync merge-wait multilib-strict network-sandbox parallel-fetch parallel-in
stall 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"
Comment 1 Sandino Araico Sanchez 2024-07-21 20:18:58 UTC
Created attachment 898078 [details]
build log
Comment 2 Sandino Araico Sanchez 2024-07-21 20:20:32 UTC
might be related to Bug 919497
Comment 3 Andrii Batyiev 2024-08-03 09:05:37 UTC
dev-lang/perl-5.38.2-r3 builds for me just fine on x32.
Your build log contains these messages:

warning _FORTIFY_SOURCE requires compiling with optimization (-O)

Could you please try to set CFLAGS/CXXFLAGS to -O2?


emerge --info for my system:
Portage 3.0.65 (python 3.12.3-final-0, default/linux/amd64/23.0/split-usr/x32, gcc-13, glibc-2.39-r6, 6.6.30-gentoo-x64 x86_64)
=================================================================
System uname: Linux-6.6.30-gentoo-x64-x86_64-Intel-R-_Core-TM-2_Duo_CPU_T5670_@_1.80GHz-with-glibc2.39
KiB Mem:     2025156 total,    299684 free
KiB Swap:    5242864 total,   4493624 free
Timestamp of repository gentoo: Sat, 03 Aug 2024 07:30:00 +0000
Head commit of repository gentoo: e1e31e901eb25928e7f01b6b2da78f19ed1879c3
Timestamp of repository qt: Fri, 12 Jul 2024 15:33:40 +0000
Head commit of repository qt: b1a94224bf1a3c60409d9d0edc8a5a66809ab58c

sh bash 5.2_p26-r6
ld GNU ld (Gentoo 2.42 p3) 2.42.0
distcc 3.4 x86_64-pc-linux-gnux32 [disabled]
app-misc/pax-utils:        1.3.7::gentoo
app-shells/bash:           5.2_p26-r6::gentoo
dev-build/autoconf:        2.71-r7::gentoo
dev-build/automake:        1.16.5-r2::gentoo
dev-build/cmake:           3.29.3::gentoo
dev-build/libtool:         2.4.7-r4::gentoo
dev-build/make:            4.4.1-r1::gentoo
dev-build/meson:           1.4.1::gentoo
dev-java/java-config:      2.3.3-r1::gentoo
dev-lang/perl:             5.38.2-r3::gentoo
dev-lang/python:           2.7.18_p16-r2::gentoo, 3.11.9-r1::gentoo, 3.12.3-r1::gentoo
sys-apps/baselayout:       2.15::gentoo
sys-apps/openrc:           0.54.2::gentoo
sys-apps/sandbox:          2.38::gentoo
sys-devel/binutils:        2.41-r5::gentoo, 2.42-r1::gentoo
sys-devel/binutils-config: 5.5::gentoo
sys-devel/clang:           17.0.6::gentoo
sys-devel/gcc:             13.3.1_p20240614::gentoo
sys-devel/gcc-config:      2.11::gentoo
sys-devel/llvm:            17.0.6::gentoo, 18.1.8-r1::gentoo
sys-kernel/linux-headers:  6.6-r1::gentoo (virtual/os-headers)
sys-libs/glibc:            2.39-r6::gentoo
Repositories:

gentoo
    location: /var/db/repos/gentoo
    sync-type: rsync
    sync-uri: rsync://rsync.gentoo.org/gentoo-portage
    priority: -1000
    volatile: False
    sync-rsync-extra-opts: 
    sync-rsync-verify-metamanifest: yes
    sync-rsync-verify-max-age: 3
    sync-rsync-verify-jobs: 1

local
    location: /var/db/repos/local
    masters: gentoo
    volatile: False

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

Binary Repositories:

gentoobinhost
    priority: 1
    sync-uri: https://distfiles.gentoo.org/releases/amd64/binpackages/23.0/x32

ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnux32"
CFLAGS="-O2 -march=core2 -mtune=core2 -pipe -mmmx -msse -msse2 -msse3 -mssse3 -mcx16 -mfpmath=sse -msahf --param l1-cache-size=32 --param l1-cache-line-size=64 --param l2-cache-size=2048 -fno-stack-protector -flto"
CHOST="x86_64-pc-linux-gnux32"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt"
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="-O2 -march=core2 -mtune=core2 -pipe -mmmx -msse -msse2 -msse3 -mssse3 -mcx16 -mfpmath=sse -msahf --param l1-cache-size=32 --param l1-cache-line-size=64 --param l2-cache-size=2048 -fno-stack-protector -flto"
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="-O2 -march=core2 -mtune=core2 -pipe -mmmx -msse -msse2 -msse3 -mssse3 -mcx16 -mfpmath=sse -msahf --param l1-cache-size=32 --param l1-cache-line-size=64 --param l2-cache-size=2048 -fno-stack-protector -flto"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs binpkg-multi-instance buildpkg-live config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync merge-wait multilib-strict network-sandbox news parallel-fetch pid-sandbox pkgdir-index-trusted preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms splitdebug strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -march=core2 -mtune=core2 -pipe -mmmx -msse -msse2 -msse3 -mssse3 -mcx16 -mfpmath=sse -msahf --param l1-cache-size=32 --param l1-cache-line-size=64 --param l2-cache-size=2048 -fno-stack-protector -flto"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="uk_UA.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,-z,pack-relative-relocs"
LEX="flex"
LINGUAS="en uk"
MAKEOPTS="-j2"
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"
SHELL="/bin/bash"
USE="X acl alsa amd64 bash-completion bzip2 crypt cyrillic dbus dri evdev flac gdbm gpm graphite iconv icu ipv6 jlink-spi libdrm libtirpc lto lvm minizip mp3 mpg123 multilib ncurses nls ogg opengl openh264 openmp opus pam pcre qdbus qml qt6 readline seccomp sixel sndfile split-usr sqlite ssl test-rust theora truetype udev unicode v4l vorbis vpx wavpack xattr xinerama zlib" ABI_X86="x32" ADA_TARGET="gcc_12" 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" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="mmx mmxext sse sse2 sse3 ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 ntrip navcom oceanserver oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 tsip tripmate tnt ublox" INPUT_DEVICES="evdev synaptics" KERNEL="linux" L10N="en uk" LCD_DEVICES="bayrad cfontz glk hd44780 lb216 lcdm001 mtxorb text" LUA_SINGLE_TARGET="lua5-1" LUA_TARGETS="lua5-1" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php8-2" POSTGRES_TARGETS="postgres15" PYTHON_SINGLE_TARGET="python3_12" PYTHON_TARGETS="python3_12" RUBY_TARGETS="ruby31 ruby32" 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, EMERGE_DEFAULT_OPTS, EXTRA_ECONF, F77FLAGS, FC, GCOV, GPROF, INSTALL_MASK, LC_ALL, LD, LFLAGS, LIBTOOL, MAKE, MAKEFLAGS, NM, OBJCOPY, OBJDUMP, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PYTHONPATH, RANLIB, READELF, RUSTFLAGS, SIZE, STRINGS, STRIP, YACC, YFLAGS
Comment 4 Sandino Araico Sanchez 2024-08-03 23:55:57 UTC
Using -O2 in CFLAGS/CXXFLAGS fails the same.

x86_64-pc-linux-gnux32-gcc -Wl,-O1 -Wl,--as-needed -Wl,-z,pack-relative-relocs -o miniperl \
    opmini.o perlmini.o universalmini.o  gv.o toke.o perly.o pad.o regcomp.o regcomp_debug.o 
regcomp_invlist.o regcomp_study.o regcomp_trie.o regexec.o dump.o util.o mg.o reentr.o mro_co
re.o keywords.o builtin.o class.o hv.o av.o run.o pp_hot.o sv.o pp.o scope.o pp_ctl.o pp_sys.
o peep.o doop.o doio.o utf8.o taint.o deb.o globals.o perlio.o numeric.o mathoms.o locale.o p
p_pack.o pp_sort.o caretx.o dquote.o time64.o  miniperlmain.o  -ldl -lm -lcrypt -lutil -lc -l
pthread -lquadmath 
LD_LIBRARY_PATH=/usr/src/portage/dev-lang/perl-5.38.2-r3/work/perl-5.38.2 ./miniperl -w -Ilib
 -Idist/Exporter/lib -MExporter -e '<?>' || sh -c 'echo >&2 Failed to build miniperl.  Please
 run make minitest; exit 1'
Failed to build miniperl. Please run make minitest
make: *** [makefile:385: lib/buildcustomize.pl] Error 1
Comment 5 Andrii Batyiev 2024-08-04 02:41:37 UTC
I was able to reproduce your crash by using USE=perl_features_quadmath
The miniperl binary crashes at perl-5.38.2/sv.c:16433 because of alignment issue (8 vs 16).

Please test without perl_features_quadmath
Comment 6 Sandino Araico Sanchez 2024-08-04 03:20:43 UTC
Disabling perl_features_quadmath compiles qith no error.
Comment 7 Andrii Batyiev 2024-08-04 10:17:31 UTC
Bug is not limited to x32, plain old i686 with CFLAGS=-msse (and USE=perl_features_quadmath) is enough to produce a crash.