MSYS2-based Windows build is currently broken
Open
Nobody has claimed this yet.
- Dominant language
- C
- Stars
- 14.1k
- Forks
- 2.2k
- Avg merge
- 7h 35m
- Merged PRs (30d)
- 51
Description
Version/Commit
master @ a8a2294f276c7912dc399bd7d4d8611e14b26a17
Environment information
- OS: Windows 10 Pro
- Compiler: gcc 9.1.0
Error output:
In file included from gfx/common/d3d10_common.c:20:
gfx/common/d3d10_common.h:1121:7: error: expected declaration specifiers or ‘...’ before ‘!’ token
1121 | !(sizeof(d3d10_uniform_t) & 0xF), "sizeof(d3d10_uniform_t) must be a multiple of 16");
| ^
gfx/common/d3d10_common.h:1121:41: error: expected declaration specifiers or ‘...’ before string constant
1121 | !(sizeof(d3d10_uniform_t) & 0xF), "sizeof(d3d10_uniform_t) must be a multiple of 16");
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from gfx/drivers_font/d3d10_font.c:25:
/src/RetroArch/gfx/common/d3d10_common.h:1121:7: error: expected declaration specifiers or ‘...’ before ‘!’ token
1121 | !(sizeof(d3d10_uniform_t) & 0xF), "sizeof(d3d10_uniform_t) must be a multiple of 16");
| ^
/src/RetroArch/gfx/common/d3d10_common.h:1121:41: error: expected declaration specifiers or ‘...’ before string constant
1121 | !(sizeof(d3d10_uniform_t) & 0xF), "sizeof(d3d10_uniform_t) must be a multiple of 16");
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make: *** [Makefile:206: obj-unix/debug/gfx/common/d3d10_common.o] Error 1
make: *** Waiting for unfinished jobs....
make: *** [Makefile:206: obj-unix/debug/gfx/drivers_font/d3d10_font.o] Error 1
In file included from gfx/drivers/d3d10.c:39:
gfx/drivers/../common/d3d10_common.h:1121:7: error: expected declaration specifiers or ‘...’ before ‘!’ token
1121 | !(sizeof(d3d10_uniform_t) & 0xF), "sizeof(d3d10_uniform_t) must be a multiple of 16");
| ^
gfx/drivers/../common/d3d10_common.h:1121:41: error: expected declaration specifiers or ‘...’ before string constant
1121 | !(sizeof(d3d10_uniform_t) & 0xF), "sizeof(d3d10_uniform_t) must be a multiple of 16");
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from gfx/drivers_display/gfx_display_d3d10.c:29:
/src/RetroArch/gfx/common/d3d10_common.h:1121:7: error: expected declaration specifiers or ‘...’ before ‘!’ token
1121 | !(sizeof(d3d10_uniform_t) & 0xF), "sizeof(d3d10_uniform_t) must be a multiple of 16");
| ^
/src/RetroArch/gfx/common/d3d10_common.h:1121:41: error: expected declaration specifiers or ‘...’ before string constant
1121 | !(sizeof(d3d10_uniform_t) & 0xF), "sizeof(d3d10_uniform_t) must be a multiple of 16");
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make: *** [Makefile:206: obj-unix/debug/gfx/drivers_display/gfx_display_d3d10.o] Error 1
make: *** [Makefile:206: obj-unix/debug/gfx/drivers/d3d10.o] Error 1
In file included from gfx/drivers/../common/d3d11_common.h:24,
from gfx/drivers/d3d11.c:52:
gfx/include/dxsdk/d3d11.h:12275:13: error: unknown type name ‘_Inout_opt_bytecount_’
12275 | _Inout_opt_bytecount_(IVSize) void *pIV);
| ^~~~~~~~~~~~~~~~~~~~~
gfx/include/dxsdk/d3d11.h:12294:13: error: unknown type name ‘_Inout_opt_bytecount_’
12294 | _Inout_opt_bytecount_(IVSize) void *pIV);
| ^~~~~~~~~~~~~~~~~~~~~
In file included from gfx/common/d3d11_common.h:24,
from gfx/common/d3d11_common.c:20:
gfx/include/dxsdk/d3d11.h:12275:13: error: unknown type name ‘_Inout_opt_bytecount_’
12275 | _Inout_opt_bytecount_(IVSize) void *pIV);
| ^~~~~~~~~~~~~~~~~~~~~
gfx/include/dxsdk/d3d11.h:12294:13: error: unknown type name ‘_Inout_opt_bytecount_’
12294 | _Inout_opt_bytecount_(IVSize) void *pIV);
| ^~~~~~~~~~~~~~~~~~~~~
In file included from /src/RetroArch/gfx/common/d3d11_common.h:24,
from gfx/drivers_font/d3d11_font.c:24:
gfx/include/dxsdk/d3d11.h:12275:13: error: unknown type name ‘_Inout_opt_bytecount_’
12275 | _Inout_opt_bytecount_(IVSize) void *pIV);
| ^~~~~~~~~~~~~~~~~~~~~
gfx/include/dxsdk/d3d11.h:12294:13: error: unknown type name ‘_Inout_opt_bytecount_’
12294 | _Inout_opt_bytecount_(IVSize) void *pIV);
| ^~~~~~~~~~~~~~~~~~~~~
In file included from gfx/drivers/d3d11.c:52:
gfx/drivers/../common/d3d11_common.h: In function ‘D3D11EncryptionBlt’:
gfx/drivers/../common/d3d11_common.h:1646:27: error: ‘struct ID3D11VideoContextVtbl’ has no member named ‘EncryptionBlt’; did you mean ‘GetEncryptionBltKey’?
1646 | video_context->lpVtbl->EncryptionBlt(
| ^~~~~~~~~~~~~
| GetEncryptionBltKey
gfx/drivers/../common/d3d11_common.h: In function ‘D3D11DecryptionBlt’:
gfx/drivers/../common/d3d11_common.h:1660:27: error: ‘struct ID3D11VideoContextVtbl’ has no member named ‘DecryptionBlt’; did you mean ‘GetEncryptionBltKey’?
1660 | video_context->lpVtbl->DecryptionBlt(
| ^~~~~~~~~~~~~
| GetEncryptionBltKey
In file included from gfx/drivers/d3d11.c:52:
gfx/drivers/../common/d3d11_common.h: At top level:
gfx/drivers/../common/d3d11_common.h:2488:7: error: expected declaration specifiers or ‘...’ before ‘(’ token
2488 | (!(sizeof(d3d11_uniform_t) & 0xF)), "sizeof(d3d11_uniform_t) must be a multiple of 16");
| ^
gfx/drivers/../common/d3d11_common.h:2488:43: error: expected declaration specifiers or ‘...’ before string constant
2488 | (!(sizeof(d3d11_uniform_t) & 0xF)), "sizeof(d3d11_uniform_t) must be a multiple of 16");
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from gfx/common/d3d11_common.c:20:
gfx/common/d3d11_common.h: In function ‘D3D11EncryptionBlt’:
gfx/common/d3d11_common.h:1646:27: error: ‘struct ID3D11VideoContextVtbl’ has no member named ‘EncryptionBlt’; did you mean ‘GetEncryptionBltKey’?
1646 | video_context->lpVtbl->EncryptionBlt(
| ^~~~~~~~~~~~~
| GetEncryptionBltKey
gfx/common/d3d11_common.h: In function ‘D3D11DecryptionBlt’:
gfx/common/d3d11_common.h:1660:27: error: ‘struct ID3D11VideoContextVtbl’ has no member named ‘DecryptionBlt’; did you mean ‘GetEncryptionBltKey’?
1660 | video_context->lpVtbl->DecryptionBlt(
| ^~~~~~~~~~~~~
| GetEncryptionBltKey
make: *** [Makefile:206: obj-unix/debug/gfx/drivers/d3d11.o] Error 1
In file included from gfx/common/d3d11_common.c:20:
gfx/common/d3d11_common.h: At top level:
In file included from /src/RetroArch/gfx/common/d3d11_common.h:24,
from gfx/drivers_display/gfx_display_d3d11.c:28:
gfx/include/dxsdk/d3d11.h:12275:13: error: unknown type name ‘_Inout_opt_bytecount_’
12275 | _Inout_opt_bytecount_(IVSize) void *pIV);
| ^~~~~~~~~~~~~~~~~~~~~
gfx/common/d3d11_common.h:2488:7: error: expected declaration specifiers or ‘...’ before ‘(’ token
2488 | (!(sizeof(d3d11_uniform_t) & 0xF)), "sizeof(d3d11_uniform_t) must be a multiple of 16");
| ^
gfx/common/d3d11_common.h:2488:43: error: expected declaration specifiers or ‘...’ before string constant
2488 | (!(sizeof(d3d11_uniform_t) & 0xF)), "sizeof(d3d11_uniform_t) must be a multiple of 16");
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from gfx/drivers_font/d3d11_font.c:24:
/src/RetroArch/gfx/common/d3d11_common.h: In function ‘D3D11EncryptionBlt’:
/src/RetroArch/gfx/common/d3d11_common.h:1646:27: error: ‘struct ID3D11VideoContextVtbl’ has no member named ‘EncryptionBlt’; did you mean ‘GetEncryptionBltKey’?
1646 | video_context->lpVtbl->EncryptionBlt(
| ^~~~~~~~~~~~~
| GetEncryptionBltKey
/src/RetroArch/gfx/common/d3d11_common.h: In function ‘D3D11DecryptionBlt’:
/src/RetroArch/gfx/common/d3d11_common.h:1660:27: error: ‘struct ID3D11VideoContextVtbl’ has no member named ‘DecryptionBlt’; did you mean ‘GetEncryptionBltKey’?
1660 | video_context->lpVtbl->DecryptionBlt(
| ^~~~~~~~~~~~~
| GetEncryptionBltKey
make: *** [Makefile:206: obj-unix/debug/gfx/common/d3d11_common.o] Error 1
gfx/include/dxsdk/d3d11.h:12294:13: error: unknown type name ‘_Inout_opt_bytecount_’
12294 | _Inout_opt_bytecount_(IVSize) void *pIV);
| ^~~~~~~~~~~~~~~~~~~~~
In file included from gfx/drivers_font/d3d11_font.c:24:
/src/RetroArch/gfx/common/d3d11_common.h: At top level:
/src/RetroArch/gfx/common/d3d11_common.h:2488:7: error: expected declaration specifiers or ‘...’ before ‘(’ token
2488 | (!(sizeof(d3d11_uniform_t) & 0xF)), "sizeof(d3d11_uniform_t) must be a multiple of 16");
| ^
/src/RetroArch/gfx/common/d3d11_common.h:2488:43: error: expected declaration specifiers or ‘...’ before string constant
2488 | (!(sizeof(d3d11_uniform_t) & 0xF)), "sizeof(d3d11_uniform_t) must be a multiple of 16");
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make: *** [Makefile:206: obj-unix/debug/gfx/drivers_font/d3d11_font.o] Error 1
In file included from gfx/drivers_display/gfx_display_d3d11.c:28:
/src/RetroArch/gfx/common/d3d11_common.h: In function ‘D3D11EncryptionBlt’:
/src/RetroArch/gfx/common/d3d11_common.h:1646:27: error: ‘struct ID3D11VideoContextVtbl’ has no member named ‘EncryptionBlt’; did you mean ‘GetEncryptionBltKey’?
1646 | video_context->lpVtbl->EncryptionBlt(
| ^~~~~~~~~~~~~
| GetEncryptionBltKey
/src/RetroArch/gfx/common/d3d11_common.h: In function ‘D3D11DecryptionBlt’:
/src/RetroArch/gfx/common/d3d11_common.h:1660:27: error: ‘struct ID3D11VideoContextVtbl’ has no member named ‘DecryptionBlt’; did you mean ‘GetEncryptionBltKey’?
1660 | video_context->lpVtbl->DecryptionBlt(
| ^~~~~~~~~~~~~
| GetEncryptionBltKey
In file included from gfx/drivers_display/gfx_display_d3d11.c:28:
/src/RetroArch/gfx/common/d3d11_common.h: At top level:
/src/RetroArch/gfx/common/d3d11_common.h:2488:7: error: expected declaration specifiers or ‘...’ before ‘(’ token
2488 | (!(sizeof(d3d11_uniform_t) & 0xF)), "sizeof(d3d11_uniform_t) must be a multiple of 16");
| ^
/src/RetroArch/gfx/common/d3d11_common.h:2488:43: error: expected declaration specifiers or ‘...’ before string constant
2488 | (!(sizeof(d3d11_uniform_t) & 0xF)), "sizeof(d3d11_uniform_t) must be a multiple of 16");
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make: *** [Makefile:206: obj-unix/debug/gfx/drivers_display/gfx_display_d3d11.o] Error 1
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the MSYS2 Windows build at commit a8a2294f276c7912dc399bd7d4d8611e14b26a17 and inspect the Makefile:206 failure. Start with gfx/common/d3d10_common.h, gfx/common/d3d11_common.h, and gfx/include/dxsdk/d3d11.h, where the reported errors occur. Done means the affected D3D10 and D3D11 targets build successfully with GCC 9.1.0.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c
- Domain
- build-system, operating-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100