How do I cross-compile for aarch64?
Code: Select all
CC="ccache clang-19" /home/test/wine-git/configure --disable-tests --enable-archs=aarch64 --host=aarch64-linux-gnu
Code: Select all
In file included from /home/test/wine-git/tools/widl/hash.c:24:
In file included from /home/test/wine-git/include/windef.h:271:
/home/test/wine-git/include/winnt.h:1992:9: warning: 'CONTEXT_CONTROL' macro redefined [-Wmacro-redefined]
1992 | #define CONTEXT_CONTROL CONTEXT_ARM64_CONTROL
| ^
/home/test/wine-git/include/winnt.h:1422:9: note: previous definition is here
1422 | #define CONTEXT_CONTROL CONTEXT_AMD64_CONTROL
| ^
/home/test/wine-git/include/winnt.h:1993:9: warning: 'CONTEXT_INTEGER' macro redefined [-Wmacro-redefined]
1993 | #define CONTEXT_INTEGER CONTEXT_ARM64_INTEGER
| ^
/home/test/wine-git/include/winnt.h:1423:9: note: previous definition is here
1423 | #define CONTEXT_INTEGER CONTEXT_AMD64_INTEGER
| ^
/home/test/wine-git/include/winnt.h:1994:9: warning: 'CONTEXT_FLOATING_POINT' macro redefined [-Wmacro-redefined]
1994 | #define CONTEXT_FLOATING_POINT CONTEXT_ARM64_FLOATING_POINT
| ^
/home/test/wine-git/include/winnt.h:1425:9: note: previous definition is here
1425 | #define CONTEXT_FLOATING_POINT CONTEXT_AMD64_FLOATING_POINT
| ^
/home/test/wine-git/include/winnt.h:1995:9: warning: 'CONTEXT_DEBUG_REGISTERS' macro redefined [-Wmacro-redefined]
1995 | #define CONTEXT_DEBUG_REGISTERS CONTEXT_ARM64_DEBUG_REGISTERS
| ^
/home/test/wine-git/include/winnt.h:1426:9: note: previous definition is here
1426 | #define CONTEXT_DEBUG_REGISTERS CONTEXT_AMD64_DEBUG_REGISTERS
| ^
/home/test/wine-git/include/winnt.h:1996:9: warning: 'CONTEXT_FULL' macro redefined [-Wmacro-redefined]
1996 | #define CONTEXT_FULL CONTEXT_ARM64_FULL
| ^
/home/test/wine-git/include/winnt.h:1428:9: note: previous definition is here
1428 | #define CONTEXT_FULL CONTEXT_AMD64_FULL
| ^
/home/test/wine-git/include/winnt.h:1997:9: warning: 'CONTEXT_ALL' macro redefined [-Wmacro-redefined]
1997 | #define CONTEXT_ALL CONTEXT_ARM64_ALL
| ^
/home/test/wine-git/include/winnt.h:1429:9: note: previous definition is here
1429 | #define CONTEXT_ALL CONTEXT_AMD64_ALL
| ^
/home/test/wine-git/include/winnt.h:2000:44: error: typedef redefinition with different types ('IMAGE_ARM64_RUNTIME_FUNCTION_ENTRY' (aka 'struct _IMAGE_ARM64_RUNTIME_FUNCTION_ENTRY') vs 'IMAGE_AMD64_RUNTIME_FUNCTION_ENTRY' (aka 'struct IMAGE_AMD64_RUNTIME_FUNCTION_ENTRY'))
2000 | typedef IMAGE_ARM64_RUNTIME_FUNCTION_ENTRY RUNTIME_FUNCTION, *PRUNTIME_FUNCTION;
| ^
/home/test/wine-git/include/winnt.h:1432:44: note: previous definition is here
1432 | typedef IMAGE_AMD64_RUNTIME_FUNCTION_ENTRY RUNTIME_FUNCTION, *PRUNTIME_FUNCTION;
| ^
/home/test/wine-git/include/winnt.h:2000:63: error: typedef redefinition with different types ('IMAGE_ARM64_RUNTIME_FUNCTION_ENTRY *' (aka 'struct _IMAGE_ARM64_RUNTIME_FUNCTION_ENTRY *') vs 'IMAGE_AMD64_RUNTIME_FUNCTION_ENTRY *' (aka 'struct IMAGE_AMD64_RUNTIME_FUNCTION_ENTRY *'))
2000 | typedef IMAGE_ARM64_RUNTIME_FUNCTION_ENTRY RUNTIME_FUNCTION, *PRUNTIME_FUNCTION;
| ^
/home/test/wine-git/include/winnt.h:1432:63: note: previous definition is here
1432 | typedef IMAGE_AMD64_RUNTIME_FUNCTION_ENTRY RUNTIME_FUNCTION, *PRUNTIME_FUNCTION;
| ^
/home/test/wine-git/include/winnt.h:2001:27: error: typedef redefinition with different types ('SCOPE_TABLE_ARM64' (aka 'struct _SCOPE_TABLE_ARM64') vs 'SCOPE_TABLE_AMD64' (aka 'struct _SCOPE_TABLE_AMD64'))
2001 | typedef SCOPE_TABLE_ARM64 SCOPE_TABLE, *PSCOPE_TABLE;
| ^
/home/test/wine-git/include/winnt.h:1433:27: note: previous definition is here
1433 | typedef SCOPE_TABLE_AMD64 SCOPE_TABLE, *PSCOPE_TABLE;
| ^
/home/test/wine-git/include/winnt.h:2001:41: error: typedef redefinition with different types ('SCOPE_TABLE_ARM64 *' (aka 'struct _SCOPE_TABLE_ARM64 *') vs 'SCOPE_TABLE_AMD64 *' (aka 'struct _SCOPE_TABLE_AMD64 *'))
2001 | typedef SCOPE_TABLE_ARM64 SCOPE_TABLE, *PSCOPE_TABLE;
| ^
/home/test/wine-git/include/winnt.h:1433:41: note: previous definition is here
1433 | typedef SCOPE_TABLE_AMD64 SCOPE_TABLE, *PSCOPE_TABLE;
| ^
/home/test/wine-git/include/winnt.h:2002:45: error: typedef redefinition with different types ('KNONVOLATILE_CONTEXT_POINTERS_ARM64' (aka 'struct _KNONVOLATILE_CONTEXT_POINTERS_ARM64') vs 'struct _KNONVOLATILE_CONTEXT_POINTERS')
2002 | typedef KNONVOLATILE_CONTEXT_POINTERS_ARM64 KNONVOLATILE_CONTEXT_POINTERS, *PKNONVOLATILE_CONTEXT_POINTERS;
| ^
/home/test/wine-git/include/winnt.h:1484:3: note: previous definition is here
1484 | } KNONVOLATILE_CONTEXT_POINTERS, *PKNONVOLATILE_CONTEXT_POINTERS;
| ^
/home/test/wine-git/include/winnt.h:2002:77: error: typedef redefinition with different types ('KNONVOLATILE_CONTEXT_POINTERS_ARM64 *' (aka 'struct _KNONVOLATILE_CONTEXT_POINTERS_ARM64 *') vs 'struct _KNONVOLATILE_CONTEXT_POINTERS *')
2002 | typedef KNONVOLATILE_CONTEXT_POINTERS_ARM64 KNONVOLATILE_CONTEXT_POINTERS, *PKNONVOLATILE_CONTEXT_POINTERS;
| ^
/home/test/wine-git/include/winnt.h:1484:35: note: previous definition is here
1484 | } KNONVOLATILE_CONTEXT_POINTERS, *PKNONVOLATILE_CONTEXT_POINTERS;
| ^
/home/test/wine-git/include/winnt.h:2004:26: error: typedef redefinition with different types ('ARM64_NT_CONTEXT' (aka 'struct _ARM64_NT_CONTEXT') vs 'AMD64_CONTEXT' (aka 'struct _AMD64_CONTEXT'))
2004 | typedef ARM64_NT_CONTEXT CONTEXT, *PCONTEXT;
| ^
/home/test/wine-git/include/winnt.h:1431:23: note: previous definition is here
1431 | typedef AMD64_CONTEXT CONTEXT, *PCONTEXT;
| ^
/home/test/wine-git/include/winnt.h:2004:36: error: typedef redefinition with different types ('ARM64_NT_CONTEXT *' (aka 'struct _ARM64_NT_CONTEXT *') vs 'AMD64_CONTEXT *' (aka 'struct _AMD64_CONTEXT *'))
2004 | typedef ARM64_NT_CONTEXT CONTEXT, *PCONTEXT;
| ^
/home/test/wine-git/include/winnt.h:1431:33: note: previous definition is here
1431 | typedef AMD64_CONTEXT CONTEXT, *PCONTEXT;
| ^
/home/test/wine-git/include/winnt.h:2082:16: error: redefinition of '_DISPATCHER_CONTEXT'
2082 | typedef struct _DISPATCHER_CONTEXT
| ^
/home/test/wine-git/include/winnt.h:2048:16: note: previous definition is here
2048 | typedef struct _DISPATCHER_CONTEXT_ARM64
| ^
/home/test/wine-git/include/winnt.h:2006:35: note: expanded from macro '_DISPATCHER_CONTEXT_ARM64'
2006 | #define _DISPATCHER_CONTEXT_ARM64 _DISPATCHER_CONTEXT
| ^
6 warnings and 9 errors generated.
make: *** [Makefile:257629: tools/widl/hash.o] Error 1
I even tried adding host_alias=aarch64-linux-gnu --with-mingw=aarch64-w64-mingw32-clang but that doesn't help.
Help!