https://bugs.winehq.org/show_bug.cgi?id=54210
Bug ID: 54210 Summary: Some AVX2 calls in ntdll are make impossible to compile Wine with Glibc 2.17 Product: Wine Version: 8.0-rc2 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: ntdll Assignee: wine-bugs@winehq.org Reporter: Zenitur@yandex.ru Distribution: ---
When I trying to compile an actian Wine 8.0-rc2 version I'd got these error:
dlls/ntdll/unix/signal_x86_64.c: In function ‘signal_init_process’: dlls/ntdll/unix/signal_x86_64.c:2432:28: error: ‘AT_HWCAP2’ undeclared (first use in this function) if (getauxval( AT_HWCAP2 ) & 2) syscall_flags |= SYSCALL_HAVE_WRFSGSBASE; ^ dlls/ntdll/unix/signal_x86_64.c:2432:28: note: each undeclared identifier is reported only once for each function it appears in
Serching for the commit that are broke the build, I'd found that the Wine 6.12 were the last version withount these error.
The commit that broke my build is there (this is after Wine 6.12 and before the 6.13):
https://github.com/wine-mirror/wine/commit/216d2411781f4bf12edf2083a7ac84d28... (committed on Jul 6, 2021)
The reason of the error is my Glibc 2.17. According of the changelog of the Glibc 2.18 version (that's available there: https://lists.gnu.org/archive/html/info-gnu/2013-08/msg00003.html) the call AT_HWCAP2 was introduced in Glibc 2.18, hovewer I have 2.17.
After that I'd tried to compile Wine 6.12 and I'd got another error caused by another AVX2 call that was introduced in Glibc 2.24
There is an error:
tools/winegcc/winegcc -o dlls/ntdll/ntdll.so --wine-objdir . -m64 -fPIC -fasynchronous-unwind-tables -munix -shared \ dlls/ntdll/ntdll.spec -nodefaultlibs dlls/ntdll/unix/cdrom.o dlls/ntdll/unix/debug.o \ dlls/ntdll/unix/env.o dlls/ntdll/unix/esync.o dlls/ntdll/unix/file.o dlls/ntdll/unix/loader.o \ dlls/ntdll/unix/loadorder.o dlls/ntdll/unix/process.o dlls/ntdll/unix/registry.o \ dlls/ntdll/unix/security.o dlls/ntdll/unix/serial.o dlls/ntdll/unix/server.o \ dlls/ntdll/unix/signal_arm.o dlls/ntdll/unix/signal_arm64.o dlls/ntdll/unix/signal_i386.o \ dlls/ntdll/unix/signal_x86_64.o dlls/ntdll/unix/socket.o dlls/ntdll/unix/sync.o \ dlls/ntdll/unix/system.o dlls/ntdll/unix/tape.o dlls/ntdll/unix/thread.o dlls/ntdll/unix/virtual.o \ dlls/ntdll/unix/version.o dlls/winecrt0/libwinecrt0.a libs/port/libwine_port.a -lrt -lpthread -ldl \ -Wl,-z,relro ntdll-sNLwi5.AoHWp5.s: Assembler messages: ntdll-sNLwi5.AoHWp5.s:115: Error: no such instruction: `xsavec64 0xc0(%rcx)' winebuild: /usr/bin/gcc-4.9 failed with status 1 winegcc: ./tools/winebuild/winebuild failed make[1]: *** [dlls/ntdll/ntdll.so] Error 2
When I tried to google this error I'd found that the call xsavec were introduced in Intel Skylace CPU's. According the webpage (https://sourceware.org/legacy-ml/libc-stable/2017-10/msg00049.html) these calls were introduced in Glibc 2.24 hovewer I have Glibc 2.17.
The commit that broke my build is there (this is after Wine 6.2 and before the 6.3):
https://github.com/wine-mirror/wine/commit/30e5250622f40037a58dd87517267dbab... (committed on Sep 2, 2020)
The both problems present in the 32-bit and 64-bit OS'es.
My build system:
CPU: AMD Phenom II (amdfam10) OS: Debian 7 (32-bit and 64-bit versions on a two partitions) Kernel: Linux 4.11 Compiler: GCC 4.9, binutils 2.22, bison 3.2 Other: Glibc 2.17, xserver 1.16
https://bugs.winehq.org/show_bug.cgi?id=54210
--- Comment #1 from Zhenya Zenitur@yandex.ru --- Created attachment 73753 --> https://bugs.winehq.org/attachment.cgi?id=73753 Build log on x86_64 Linux
https://bugs.winehq.org/show_bug.cgi?id=54210
Zeb Figura z.figura12@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Regression SHA1| |216d2411781f4bf12edf2083a7a | |c84d2885bd404 Summary|Some AVX2 calls in ntdll |Wine fails to compile with |are make impossible to |Linux 4.11 headers (use of |compile Wine with Glibc |undefined AT_HWCAP2) |2.17 | CC| |z.figura12@gmail.com Keywords| |regression
--- Comment #2 from Zeb Figura z.figura12@gmail.com --- We already have bug 51268 for the xsavec issue, so let's just make this about AT_HWCAP2.
https://bugs.winehq.org/show_bug.cgi?id=54210
Fabian Maurer dark.shadow4@web.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |dark.shadow4@web.de Status|UNCONFIRMED |RESOLVED Fixed by SHA1| |95fe8e5d152338c17152fc06024 | |c081f7f4181b7 Resolution|--- |FIXED
--- Comment #3 from Fabian Maurer dark.shadow4@web.de --- Should be fixed by https://gitlab.winehq.org/wine/wine/-/commit/95fe8e5d152338c17152fc06024c081...
https://bugs.winehq.org/show_bug.cgi?id=54210
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #4 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 8.0-rc4.