MINGW-packages: d3dcompiler_43-47 broken

It seems that after my latest pacman -Syu system upgrade, not all is well. The D3D shader compiler seems to have been obscurely broken. The D3D11 dependencies are all fine and well, but I am suddenly getting E_INVALIDARG returned from D3DReflect in an app that has been working fine for two years.

When I first got the issue, there was no change to my installed drivers or anything, simply an MSYS2 upgrade. Since then I have tried upgrading the graphics card drivers, but it is still broken.

This is all of the dependencies from MinGW64 that I link: override LDLIBS += -ldxgi -ldxguid -ld3d11 -lD3DCompiler

It seems -lD3DCompiler is actually matching libd3dcompiler_47.a.

This is on Windows 10 64 bit, and I have an AMD Radeon 290 series graphics card. Direct3D9, OpenGL compatibility and core contexts all work fine and dandy. I seem to also have no problems with other Direct3D11 applications or games, only this one using the D3D shader compiler provided by MinGW/MSYS.

About this issue

  • Original URL
  • State: closed
  • Created 5 years ago
  • Comments: 17 (13 by maintainers)

Commits related to this issue

Most upvoted comments

Patch is accepted in wine https://source.winehq.org/git/wine.git/commit/23c6dd55b8c983ec88cada0a6d6c75ee9cd93976. I am not sure if this fixes the issues here.

It will take time to import it mingw-w64-headers and crt packages. If you can’t wait then import the patch to mingw-w64 repository and use it to create headers and crt packages.