Having trouble compiling Wine for aarch64

Questions about Wine on Linux
Post Reply
MerluzaCuca
Newbie
Newbie
Posts: 1
Joined: Thu May 23, 2024 5:11 pm

Having trouble compiling Wine for aarch64

Post by MerluzaCuca »

I'm trying to compile Wine 9.9 from source after executing this command:

Code: Select all

../configure --host=aarch64-linux-android --enable-win64 --disable-tests   CC='ccache gcc' CROSSCC='ccache x86_64-w64-mingw32-gcc'
But when I execute the make command, the following errors appear:

Code: Select all

~/wine9.9/wine64$ make
aarch64-w64-mingw32-clang -c -o dlls/acledit/aarch64-windows/main.o ../dlls/acledit/main.c -Idlls/acledit -I../dlls/acledit -Iinclude \
  -I../include -I../include/msvcrt -D_UCRT -D__WINESRC__ -D__WINE_PE_BUILD -Wall -target \
  aarch64-w64-mingw32 -fuse-ld=lld --no-default-config -fno-strict-aliasing \
  -Wdeclaration-after-statement -Wempty-body -Wignored-qualifiers -Winit-self -Wno-pragma-pack \
  -Wno-microsoft-enum-forward-reference -Wstrict-prototypes -Wtype-limits -Wunused-but-set-parameter \
  -Wvla -Wwrite-strings -Wpointer-arith -Wabsolute-value -g -O2
ccache gcc -c -o tools/winebuild/import.o ../tools/winebuild/import.c -Itools/winebuild -I../tools/winebuild -Iinclude \
  -I../include -D__WINESRC__ -DWINE_UNIX_LIB -Wall -pipe -fcf-protection=none -fvisibility=hidden \
  -fno-stack-protector -fno-strict-aliasing -Wdeclaration-after-statement -Wempty-body \
  -Wignored-qualifiers -Winit-self -Wno-packed-not-aligned -Wshift-overflow=2 -Wstrict-prototypes \
  -Wtype-limits -Wunused-but-set-parameter -Wvla -Wwrite-strings -Wno-misleading-indentation \
  -Wpointer-arith -Wlogical-op -gdwarf-4 -g -O2 -D__aarch64__
ccache gcc -c -o tools/winebuild/main.o ../tools/winebuild/main.c -Itools/winebuild -I../tools/winebuild -Iinclude \
  -I../include -D__WINESRC__ -DWINE_UNIX_LIB -Wall -pipe -fcf-protection=none -fvisibility=hidden \
  -fno-stack-protector -fno-strict-aliasing -Wdeclaration-after-statement -Wempty-body \
  -Wignored-qualifiers -Winit-self -Wno-packed-not-aligned -Wshift-overflow=2 -Wstrict-prototypes \
  -Wtype-limits -Wunused-but-set-parameter -Wvla -Wwrite-strings -Wno-misleading-indentation \
  -Wpointer-arith -Wlogical-op -gdwarf-4 -g -O2 -D__aarch64__
ccache gcc -c -o tools/winebuild/parser.o ../tools/winebuild/parser.c -Itools/winebuild -I../tools/winebuild -Iinclude \
  -I../include -D__WINESRC__ -DWINE_UNIX_LIB -Wall -pipe -fcf-protection=none -fvisibility=hidden \
  -fno-stack-protector -fno-strict-aliasing -Wdeclaration-after-statement -Wempty-body \
  -Wignored-qualifiers -Winit-self -Wno-packed-not-aligned -Wshift-overflow=2 -Wstrict-prototypes \
  -Wtype-limits -Wunused-but-set-parameter -Wvla -Wwrite-strings -Wno-misleading-indentation \
  -Wpointer-arith -Wlogical-op -gdwarf-4 -g -O2 -D__aarch64__
ccache gcc -c -o tools/winebuild/relay.o ../tools/winebuild/relay.c -Itools/winebuild -I../tools/winebuild -Iinclude \
  -I../include -D__WINESRC__ -DWINE_UNIX_LIB -Wall -pipe -fcf-protection=none -fvisibility=hidden \
  -fno-stack-protector -fno-strict-aliasing -Wdeclaration-after-statement -Wempty-body \
  -Wignored-qualifiers -Winit-self -Wno-packed-not-aligned -Wshift-overflow=2 -Wstrict-prototypes \
  -Wtype-limits -Wunused-but-set-parameter -Wvla -Wwrite-strings -Wno-misleading-indentation \
  -Wpointer-arith -Wlogical-op -gdwarf-4 -g -O2 -D__aarch64__
ccache gcc -c -o tools/winebuild/res16.o ../tools/winebuild/res16.c -Itools/winebuild -I../tools/winebuild -Iinclude \
  -I../include -D__WINESRC__ -DWINE_UNIX_LIB -Wall -pipe -fcf-protection=none -fvisibility=hidden \
  -fno-stack-protector -fno-strict-aliasing -Wdeclaration-after-statement -Wempty-body \
  -Wignored-qualifiers -Winit-self -Wno-packed-not-aligned -Wshift-overflow=2 -Wstrict-prototypes \
  -Wtype-limits -Wunused-but-set-parameter -Wvla -Wwrite-strings -Wno-misleading-indentation \
  -Wpointer-arith -Wlogical-op -gdwarf-4 -g -O2 -D__aarch64__
ccache gcc -c -o tools/winebuild/res32.o ../tools/winebuild/res32.c -Itools/winebuild -I../tools/winebuild -Iinclude \
  -I../include -D__WINESRC__ -DWINE_UNIX_LIB -Wall -pipe -fcf-protection=none -fvisibility=hidden \
  -fno-stack-protector -fno-strict-aliasing -Wdeclaration-after-statement -Wempty-body \
  -Wignored-qualifiers -Winit-self -Wno-packed-not-aligned -Wshift-overflow=2 -Wstrict-prototypes \
  -Wtype-limits -Wunused-but-set-parameter -Wvla -Wwrite-strings -Wno-misleading-indentation \
  -Wpointer-arith -Wlogical-op -gdwarf-4 -g -O2 -D__aarch64__
ccache gcc -c -o tools/winebuild/spec16.o ../tools/winebuild/spec16.c -Itools/winebuild -I../tools/winebuild -Iinclude \
  -I../include -D__WINESRC__ -DWINE_UNIX_LIB -Wall -pipe -fcf-protection=none -fvisibility=hidden \
  -fno-stack-protector -fno-strict-aliasing -Wdeclaration-after-statement -Wempty-body \
  -Wignored-qualifiers -Winit-self -Wno-packed-not-aligned -Wshift-overflow=2 -Wstrict-prototypes \
  -Wtype-limits -Wunused-but-set-parameter -Wvla -Wwrite-strings -Wno-misleading-indentation \
  -Wpointer-arith -Wlogical-op -gdwarf-4 -g -O2 -D__aarch64__
ccache gcc -c -o tools/winebuild/spec32.o ../tools/winebuild/spec32.c -Itools/winebuild -I../tools/winebuild -Iinclude \
  -I../include -D__WINESRC__ -DWINE_UNIX_LIB -Wall -pipe -fcf-protection=none -fvisibility=hidden \
  -fno-stack-protector -fno-strict-aliasing -Wdeclaration-after-statement -Wempty-body \
  -Wignored-qualifiers -Winit-self -Wno-packed-not-aligned -Wshift-overflow=2 -Wstrict-prototypes \
  -Wtype-limits -Wunused-but-set-parameter -Wvla -Wwrite-strings -Wno-misleading-indentation \
  -Wpointer-arith -Wlogical-op -gdwarf-4 -g -O2 -D__aarch64__
ccache gcc -c -o tools/winebuild/utils.o ../tools/winebuild/utils.c -Itools/winebuild -I../tools/winebuild -Iinclude \
  -I../include -D__WINESRC__ -DWINE_UNIX_LIB -Wall -pipe -fcf-protection=none -fvisibility=hidden \
  -fno-stack-protector -fno-strict-aliasing -Wdeclaration-after-statement -Wempty-body \
  -Wignored-qualifiers -Winit-self -Wno-packed-not-aligned -Wshift-overflow=2 -Wstrict-prototypes \
  -Wtype-limits -Wunused-but-set-parameter -Wvla -Wwrite-strings -Wno-misleading-indentation \
  -Wpointer-arith -Wlogical-op -gdwarf-4 -g -O2 -D__aarch64__
ccache gcc -o tools/winebuild/winebuild tools/winebuild/import.o tools/winebuild/main.o tools/winebuild/parser.o \
  tools/winebuild/relay.o tools/winebuild/res16.o tools/winebuild/res32.o tools/winebuild/spec16.o \
  tools/winebuild/spec32.o tools/winebuild/utils.o
aarch64-w64-mingw32-clang -c -o dlls/winecrt0/aarch64-windows/arm64ec.o ../dlls/winecrt0/arm64ec.c -Idlls/winecrt0 -I../dlls/winecrt0 -Iinclude \
  -I../include -I../include/msvcrt -D_MSVCR_VER=0 -D__WINESRC__ -D__WINE_PE_BUILD -Wall -target \
  aarch64-w64-mingw32 -fuse-ld=lld --no-default-config -fno-strict-aliasing \
  -Wdeclaration-after-statement -Wempty-body -Wignored-qualifiers -Winit-self -Wno-pragma-pack \
  -Wno-microsoft-enum-forward-reference -Wstrict-prototypes -Wtype-limits -Wunused-but-set-parameter \
  -Wvla -Wwrite-strings -Wpointer-arith -Wabsolute-value -g -O2
aarch64-w64-mingw32-clang -c -o dlls/winecrt0/aarch64-windows/crt_dllmain.o ../dlls/winecrt0/crt_dllmain.c -Idlls/winecrt0 -I../dlls/winecrt0 -Iinclude \
  -I../include -I../include/msvcrt -D_MSVCR_VER=0 -D__WINESRC__ -D__WINE_PE_BUILD -Wall -target \
  aarch64-w64-mingw32 -fuse-ld=lld --no-default-config -fno-strict-aliasing \
  -Wdeclaration-after-statement -Wempty-body -Wignored-qualifiers -Winit-self -Wno-pragma-pack \
  -Wno-microsoft-enum-forward-reference -Wstrict-prototypes -Wtype-limits -Wunused-but-set-parameter \
  -Wvla -Wwrite-strings -Wpointer-arith -Wabsolute-value -g -O2
aarch64-w64-mingw32-clang -c -o dlls/winecrt0/aarch64-windows/crt_fltused.o ../dlls/winecrt0/crt_fltused.c -Idlls/winecrt0 -I../dlls/winecrt0 -Iinclude \
  -I../include -I../include/msvcrt -D_MSVCR_VER=0 -D__WINESRC__ -D__WINE_PE_BUILD -Wall -target \
  aarch64-w64-mingw32 -fuse-ld=lld --no-default-config -fno-strict-aliasing \
  -Wdeclaration-after-statement -Wempty-body -Wignored-qualifiers -Winit-self -Wno-pragma-pack \
  -Wno-microsoft-enum-forward-reference -Wstrict-prototypes -Wtype-limits -Wunused-but-set-parameter \
  -Wvla -Wwrite-strings -Wpointer-arith -Wabsolute-value -g -O2
aarch64-w64-mingw32-clang -c -o dlls/winecrt0/aarch64-windows/debug.o ../dlls/winecrt0/debug.c -Idlls/winecrt0 -I../dlls/winecrt0 -Iinclude \
  -I../include -I../include/msvcrt -D_MSVCR_VER=0 -D__WINESRC__ -D__WINE_PE_BUILD -Wall -target \
  aarch64-w64-mingw32 -fuse-ld=lld --no-default-config -fno-strict-aliasing \
  -Wdeclaration-after-statement -Wempty-body -Wignored-qualifiers -Winit-self -Wno-pragma-pack \
  -Wno-microsoft-enum-forward-reference -Wstrict-prototypes -Wtype-limits -Wunused-but-set-parameter \
  -Wvla -Wwrite-strings -Wpointer-arith -Wabsolute-value -g -O2
aarch64-w64-mingw32-clang -c -o dlls/winecrt0/aarch64-windows/delay_load.o ../dlls/winecrt0/delay_load.c -Idlls/winecrt0 -I../dlls/winecrt0 -Iinclude \
  -I../include -I../include/msvcrt -D_MSVCR_VER=0 -D__WINESRC__ -D__WINE_PE_BUILD -Wall -target \
  aarch64-w64-mingw32 -fuse-ld=lld --no-default-config -fno-strict-aliasing \
  -Wdeclaration-after-statement -Wempty-body -Wignored-qualifiers -Winit-self -Wno-pragma-pack \
  -Wno-microsoft-enum-forward-reference -Wstrict-prototypes -Wtype-limits -Wunused-but-set-parameter \
  -Wvla -Wwrite-strings -Wpointer-arith -Wabsolute-value -g -O2
bison -o tools/widl/parser.tab.$$.c --defines=tools/widl/parser.tab.h ../tools/widl/parser.y && rm -f tools/widl/parser.tab.$$.c
ccache gcc -c -o tools/widl/attribute.o ../tools/widl/attribute.c -Itools/widl -I../tools/widl -I../tools/wrc -Iinclude \
  -I../include -D__WINESRC__ -DWINE_UNIX_LIB -Wall -pipe -fcf-protection=none -fvisibility=hidden \
  -fno-stack-protector -fno-strict-aliasing -Wdeclaration-after-statement -Wempty-body \
  -Wignored-qualifiers -Winit-self -Wno-packed-not-aligned -Wshift-overflow=2 -Wstrict-prototypes \
  -Wtype-limits -Wunused-but-set-parameter -Wvla -Wwrite-strings -Wno-misleading-indentation \
  -Wpointer-arith -Wlogical-op -gdwarf-4 -g -O2 -D__aarch64__
ccache gcc -c -o tools/widl/client.o ../tools/widl/client.c -Itools/widl -I../tools/widl -I../tools/wrc -Iinclude \
  -I../include -D__WINESRC__ -DWINE_UNIX_LIB -Wall -pipe -fcf-protection=none -fvisibility=hidden \
  -fno-stack-protector -fno-strict-aliasing -Wdeclaration-after-statement -Wempty-body \
  -Wignored-qualifiers -Winit-self -Wno-packed-not-aligned -Wshift-overflow=2 -Wstrict-prototypes \
  -Wtype-limits -Wunused-but-set-parameter -Wvla -Wwrite-strings -Wno-misleading-indentation \
  -Wpointer-arith -Wlogical-op -gdwarf-4 -g -O2 -D__aarch64__
ccache gcc -c -o tools/widl/expr.o ../tools/widl/expr.c -Itools/widl -I../tools/widl -I../tools/wrc -Iinclude \
  -I../include -D__WINESRC__ -DWINE_UNIX_LIB -Wall -pipe -fcf-protection=none -fvisibility=hidden \
  -fno-stack-protector -fno-strict-aliasing -Wdeclaration-after-statement -Wempty-body \
  -Wignored-qualifiers -Winit-self -Wno-packed-not-aligned -Wshift-overflow=2 -Wstrict-prototypes \
  -Wtype-limits -Wunused-but-set-parameter -Wvla -Wwrite-strings -Wno-misleading-indentation \
  -Wpointer-arith -Wlogical-op -gdwarf-4 -g -O2 -D__aarch64__
ccache gcc -c -o tools/widl/hash.o ../tools/widl/hash.c -Itools/widl -I../tools/widl -I../tools/wrc -Iinclude \
  -I../include -D__WINESRC__ -DWINE_UNIX_LIB -Wall -pipe -fcf-protection=none -fvisibility=hidden \
  -fno-stack-protector -fno-strict-aliasing -Wdeclaration-after-statement -Wempty-body \
  -Wignored-qualifiers -Winit-self -Wno-packed-not-aligned -Wshift-overflow=2 -Wstrict-prototypes \
  -Wtype-limits -Wunused-but-set-parameter -Wvla -Wwrite-strings -Wno-misleading-indentation \
  -Wpointer-arith -Wlogical-op -gdwarf-4 -g -O2 -D__aarch64__
In file included from ../include/windef.h:271,
                 from ../tools/widl/hash.c:24:
../include/winnt.h:1842: warning: "CONTEXT_CONTROL" redefined
 1842 | #define CONTEXT_CONTROL CONTEXT_ARM64_CONTROL
      |
../include/winnt.h:1367: note: this is the location of the previous definition
 1367 | #define CONTEXT_CONTROL CONTEXT_AMD64_CONTROL
      |
../include/winnt.h:1843: warning: "CONTEXT_INTEGER" redefined
 1843 | #define CONTEXT_INTEGER CONTEXT_ARM64_INTEGER
      |
../include/winnt.h:1368: note: this is the location of the previous definition
 1368 | #define CONTEXT_INTEGER CONTEXT_AMD64_INTEGER
      |
../include/winnt.h:1844: warning: "CONTEXT_FLOATING_POINT" redefined
 1844 | #define CONTEXT_FLOATING_POINT CONTEXT_ARM64_FLOATING_POINT
      |
../include/winnt.h:1370: note: this is the location of the previous definition
 1370 | #define CONTEXT_FLOATING_POINT CONTEXT_AMD64_FLOATING_POINT
      |
../include/winnt.h:1845: warning: "CONTEXT_DEBUG_REGISTERS" redefined
 1845 | #define CONTEXT_DEBUG_REGISTERS CONTEXT_ARM64_DEBUG_REGISTERS
      |
../include/winnt.h:1371: note: this is the location of the previous definition
 1371 | #define CONTEXT_DEBUG_REGISTERS CONTEXT_AMD64_DEBUG_REGISTERS
      |
../include/winnt.h:1846: warning: "CONTEXT_FULL" redefined
 1846 | #define CONTEXT_FULL CONTEXT_ARM64_FULL
      |
../include/winnt.h:1373: note: this is the location of the previous definition
 1373 | #define CONTEXT_FULL CONTEXT_AMD64_FULL
      |
../include/winnt.h:1847: warning: "CONTEXT_ALL" redefined
 1847 | #define CONTEXT_ALL CONTEXT_ARM64_ALL
      |
../include/winnt.h:1374: note: this is the location of the previous definition
 1374 | #define CONTEXT_ALL CONTEXT_AMD64_ALL
      |
../include/winnt.h:1849:44: error: conflicting types for ‘RUNTIME_FUNCTION’; have ‘IMAGE_ARM64_RUNTIME_FUNCTION_ENTRY’ {aka ‘struct _IMAGE_ARM64_RUNTIME_FUNCTION_ENTRY’}
 1849 | typedef IMAGE_ARM64_RUNTIME_FUNCTION_ENTRY RUNTIME_FUNCTION, *PRUNTIME_FUNCTION;
      |                                            ^~~~~~~~~~~~~~~~
../include/winnt.h:1377:32: note: previous declaration of ‘RUNTIME_FUNCTION’ with type ‘RUNTIME_FUNCTION’ {aka ‘struct _AMD64_RUNTIME_FUNCTION’}
 1377 | typedef AMD64_RUNTIME_FUNCTION RUNTIME_FUNCTION, *PRUNTIME_FUNCTION;
      |                                ^~~~~~~~~~~~~~~~
../include/winnt.h:1849:63: error: conflicting types for ‘PRUNTIME_FUNCTION’; have ‘IMAGE_ARM64_RUNTIME_FUNCTION_ENTRY ’ {aka ‘struct _IMAGE_ARM64_RUNTIME_FUNCTION_ENTRY *’}
 1849 | typedef IMAGE_ARM64_RUNTIME_FUNCTION_ENTRY RUNTIME_FUNCTION, *PRUNTIME_FUNCTION;
      |                                                               ^~~~~~~~~~~~~~~~~
../include/winnt.h:1377:51: note: previous declaration of ‘PRUNTIME_FUNCTION’ with type ‘PRUNTIME_FUNCTION’ {aka ‘struct _AMD64_RUNTIME_FUNCTION *’}
 1377 | typedef AMD64_RUNTIME_FUNCTION RUNTIME_FUNCTION, *PRUNTIME_FUNCTION;
      |                                                   ^~~~~~~~~~~~~~~~~
../include/winnt.h:1851:26: error: conflicting types for ‘CONTEXT’; have ‘ARM64_NT_CONTEXT’ {aka ‘struct _ARM64_NT_CONTEXT’}
 1851 | typedef ARM64_NT_CONTEXT CONTEXT, *PCONTEXT;
      |                          ^~~~~~~
../include/winnt.h:1376:23: note: previous declaration of ‘CONTEXT’ with type ‘CONTEXT’ {aka ‘struct _AMD64_CONTEXT’}
 1376 | typedef AMD64_CONTEXT CONTEXT, *PCONTEXT;
      |                       ^~~~~~~
../include/winnt.h:1851:36: error: conflicting types for ‘PCONTEXT’; have ‘ARM64_NT_CONTEXT *’ {aka ‘struct _ARM64_NT_CONTEXT *’}
 1851 | typedef ARM64_NT_CONTEXT CONTEXT, *PCONTEXT;
      |                                    ^~~~~~~~
../include/winnt.h:1376:33: note: previous declaration of ‘PCONTEXT’ with type ‘PCONTEXT’ {aka ‘struct _AMD64_CONTEXT *’}
 1376 | typedef AMD64_CONTEXT CONTEXT, *PCONTEXT;
      |                                 ^~~~~~~~
../include/winnt.h:1853:16: error: redefinition of ‘struct _KNONVOLATILE_CONTEXT_POINTERS’
 1853 | typedef struct _KNONVOLATILE_CONTEXT_POINTERS
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/winnt.h:1379:16: note: originally defined here
 1379 | typedef struct _KNONVOLATILE_CONTEXT_POINTERS
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/winnt.h:1875:3: error: conflicting types for ‘KNONVOLATILE_CONTEXT_POINTERS’; have ‘struct _KNONVOLATILE_CONTEXT_POINTERS’
 1875 | } KNONVOLATILE_CONTEXT_POINTERS, *PKNONVOLATILE_CONTEXT_POINTERS;
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/winnt.h:1428:3: note: previous declaration of ‘KNONVOLATILE_CONTEXT_POINTERS’ with type ‘KNONVOLATILE_CONTEXT_POINTERS’ {aka ‘struct _KNONVOLATILE_CONTEXT_POINTERS’}
 1428 | } KNONVOLATILE_CONTEXT_POINTERS, *PKNONVOLATILE_CONTEXT_POINTERS;
      |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/winnt.h:1875:35: error: conflicting types for ‘PKNONVOLATILE_CONTEXT_POINTERS’; have ‘struct _KNONVOLATILE_CONTEXT_POINTERS *’
 1875 | } KNONVOLATILE_CONTEXT_POINTERS, *PKNONVOLATILE_CONTEXT_POINTERS;
      |                                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/winnt.h:1428:35: note: previous declaration of ‘PKNONVOLATILE_CONTEXT_POINTERS’ with type ‘PKNONVOLATILE_CONTEXT_POINTERS’ {aka ‘struct _KNONVOLATILE_CONTEXT_POINTERS *’}
 1428 | } KNONVOLATILE_CONTEXT_POINTERS, *PKNONVOLATILE_CONTEXT_POINTERS;
      |                                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make: *** [Makefile:167160: tools/widl/hash.o] Error 1
Post Reply