Summary: | sys-libs/glibc-2.29-r2 emake failed error: ‘REG_RBP’ undeclared | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Banana <mail> |
Component: | Current packages | Assignee: | Gentoo Toolchain Maintainers <toolchain> |
Status: | RESOLVED INVALID | ||
Severity: | normal | ||
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | AMD64 | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
glibc-2.29-r2 build log
glibc-2.29-r2 build enviroment |
Description
Banana
2019-07-02 11:34:07 UTC
Please attach all log files to this bug. External resources might be unavailable (even if they belong to / are administered by you). Created attachment 581752 [details]
glibc-2.29-r2 build log
Created attachment 581754 [details]
glibc-2.29-r2 build enviroment
added the linked log files as attachments (In reply to Banana from comment #0) > Hello everyone. ... > Problematic package: sys-libs/glibc-2.29-r2 > > The forum narrowed it down to this command and suggest the -m23 is wrong: > > python3 -B ../scripts/gen-as-const.py --cc="x86_64-pc-linux-gnu-gcc -m32 > -march=skylake -pipe -O2 -fno-strict-aliasing -Wl,-O1 -Wl,--as-needed ... -m32 is expected here: USE=multilib in glibc enables building of 32-bit libs (always enabled on multilib profiles). It should always work. I think the real problem here is mis-detection of the target. My system reports: ABI: x86 CBUILD: x86_64-pc-linux-gnu CHOST: x86_64-pc-linux-gnu CTARGET: x86_64-pc-linux-gnu CBUILD_OPT: i686-pc-linux-gnu CTARGET_OPT: i686-pc-linux-gnu CC: x86_64-pc-linux-gnu-gcc -m32 ... checking sysdep dirs... sysdeps/unix/sysv/linux/i386/i686 sysdeps/i386/i686/nptl sysdeps/unix/sysv/linux/i386 sysdeps/unix/sysv/linux/x86 sysdeps/x86/nptl sysdeps/i386/nptl sysdeps/unix/sysv/linux sysdeps/nptl sysdeps/pthread sysdeps/gnu sysdeps/unix/inet sysdeps/unix/sysv sysdeps/unix/i386 sysdeps/unix sysdeps/posix sysdeps/i386/i686/fpu/multiarch sysdeps/i386/i686/fpu sysdeps/i386/i686/multiarch sysdeps/i386/i686 sysdeps/i386/fpu sysdeps/x86/fpu sysdeps/i386 sysdeps/x86 sysdeps/wordsize-32 sysdeps/ieee754/float128 sysdeps/ieee754/ldbl-96 sysdeps/ieee754/dbl-64 sysdeps/ieee754/flt-32 sysdeps/ieee754 sysdeps/generic Your reports: ABI: x86 CBUILD: x86_64-pc-linux-gnu CHOST: x86_64-pc-linux-gnu CTARGET: x86_64-pc-linux-gnu CBUILD_OPT: x86_64-pc-linux-gnu CTARGET_OPT: x86_64-pc-linux-gnu CC: x86_64-pc-linux-gnu-gcc -m32 checking sysdep dirs... sysdeps/unix/sysv/linux/x86_64/64 sysdeps/unix/sysv/linux/x86_64 sysdeps/unix/sysv/linux/x86 sysdeps/x86/nptl sysdeps/unix/sysv/linux/wordsize-64 sysdeps/x86_64/nptl sysdeps/unix/sysv/linux sysdeps/nptl sysdeps/pthread sysdeps/gnu sysdeps/unix/inet sysdeps/unix/sysv sysdeps/unix/x86_64 sysdeps/unix sysdeps/posix sysdeps/x86_64/64 sysdeps/x86_64/fpu/multiarch sysdeps/x86_64/fpu sysdeps/x86/fpu sysdeps/x86_64/multiarch sysdeps/x86_64 sysdeps/x86 sysdeps/ieee754/float128 sysdeps/ieee754/ldbl-96 sysdeps/ieee754/dbl-64/wordsize-64 sysdeps/ieee754/dbl-64 sysdeps/ieee754/flt-32 sysdeps/wordsize-64 sysdeps/ieee754 sysdeps/generic Note: your system did not detect a switch to 32-bit CTARGET and tricked glibc into pulling x86_64 glibc definitions instead of i386. We need to find out why. Probably due to -march=skylake. We'll need to find why CBUILD_OPT setting did not work. glibc-2.29-r2.ebuild should set it in : unset CBUILD_OPT CTARGET_OPT if use multilib ; then CTARGET_OPT=$(get_abi_CTARGET) [[ -z ${CTARGET_OPT} ]] && CTARGET_OPT=$(get_abi_CHOST) fi I see your environment defines declare -x CHOST_x86="x86_64-pc-linux-gnu" Where does it come from? From make.conf? It supposed to be declare -x CHOST_x86="i686-pc-linux-gnu" (In reply to Sergei Trofimovich from comment #6) > I see your environment defines > declare -x CHOST_x86="x86_64-pc-linux-gnu" > Where does it come from? From make.conf? > > It supposed to be > declare -x CHOST_x86="i686-pc-linux-gnu" Do you have anything like that in you /etc/portage/make.conf or /etc/portage/profile? Woha thanks for the fast response, did not expect that! grep -r x86_64-pc-linux-gnu /etc/portage /etc/portage/make.conf:CHOST="x86_64-pc-linux-gnu" So, it looks like the CHOST value is wrong? Don't ask my how. Weeks ago I've lost my make.conf (yeah, that case...) and had to rebuild it. Looks like I have messed that up then. So, fixing in and following this: https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable should to the trick? (In reply to Banana from comment #8) > Woha thanks for the fast response, did not expect that! > > grep -r x86_64-pc-linux-gnu /etc/portage > /etc/portage/make.conf:CHOST="x86_64-pc-linux-gnu" > > So, it looks like the CHOST value is wrong? > > Don't ask my how. Weeks ago I've lost my make.conf (yeah, that case...) and > had to rebuild it. Looks like I have messed that up then. > > So, fixing in and following this: > https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable should to the trick? This CHOST value is correct. No need to rebuild anything. Gentoo's profiles define CHOST, CHOST_amd64 and CHOST_x86. Only CHOST_x86 is wrong on your system. Can you post your: - full make.conf - output of 'ls -ld /etc/portage/make.profile' - contents of '/etc/portage/profile' Or you need to find where that CHOST_x86 value yourself. > > This CHOST value is correct. No need to rebuild anything. > > Gentoo's profiles define CHOST, CHOST_amd64 and CHOST_x86. Only CHOST_x86 is > wrong on your system. > > Can you post your: > - full make.conf CHOST="x86_64-pc-linux-gnu" CHOST_x86="${CHOST}" CFLAGS="-march=native -O2 -pipe" CXXFLAGS="${CFLAGS}" CPU_FLAGS_X86="aes avx avx2 f16c fma3 mmx mmxext pclmul popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3" MAKEOPTS="-j5" USE="pulseaudio gtk3 xvmc xinerama corefonts vim-syntax bindist \ truetype evdev elogind \ -introspection -multilib -abi_x86_32 \ -networkmanager -consolekit -systemd -qt5 -bluetooth \ -systemd -gnome-online-accounts -gnome -geolocation" LINGUAS="de pt_BR en en_US en_GB" L10N="de en en-GB" VIDEO_CARDS="intel nvidia" INPUT_DEVICES="evdev" ACCEPT_LICENSE="* -@EULA" > - output of 'ls -ld /etc/portage/make.profile' lrwxrwxrwx 1 root root 59 Dec 11 2017 /etc/portage/make.profile -> ../../usr/portage/profiles/default/linux/amd64/17.0/desktop > - contents of '/etc/portage/profile' ls: cannot access '/etc/portage/profile': No such file or directory > > Or you need to find where that CHOST_x86 value yourself. grep -rl CHOST_x86 /etc /etc/portage/make.conf Err well, I think I've found the "error" a CHOST_x86="${CHOST}" should not be set in a make.conf.... Really don't know why I put this there... I will remove this and try to build glibc and report back.. (In reply to Banana from comment #11) > Err well, I think I've found the "error" > > a CHOST_x86="${CHOST}" should not be set in a make.conf.... > > Really don't know why I put this there... I will remove this and try to > build glibc and report back.. Well that was it. Sorry for taking your time and thx for providing it anyway. glibc builds not successfully and I can make my usual emerge -uUDNq @world again and then start to switch to the new profile. I can think we can close the bug now. (In reply to Banana from comment #12) > (In reply to Banana from comment #11) > > Err well, I think I've found the "error" > > > > a CHOST_x86="${CHOST}" should not be set in a make.conf.... > > > > Really don't know why I put this there... I will remove this and try to > > build glibc and report back.. > > Well that was it. Sorry for taking your time and thx for providing it > anyway. glibc builds not successfully and I can make my usual emerge -uUDNq > @world again and then start to switch to the new profile. > > I can think we can close the bug now. It builds NOW successfully... damn typo... (In reply to Banana from comment #11) > Err well, I think I've found the "error" > > a CHOST_x86="${CHOST}" should not be set in a make.conf.... > > Really don't know why I put this there... I will remove this and try to > build glibc and report back.. You found it! Yeah, CHOST_x86 should never be set in make.conf. Closing as INVALID. |