Frogging-Family / wine-tkg-git

The wine-tkg build systems, to create custom Wine and Proton builds
856 stars 155 forks source link

[BUILD][STAGING] undefined reference to `D3D12GetInterface' as build #1092

Closed EliasTheGrandMasterOfMistakes closed 9 months ago

EliasTheGrandMasterOfMistakes commented 9 months ago

System: Ubuntu Docker Latest Dependencies: All 32 and 64 bits fetched by proton-tkg.sh Version: Wine Upstream Proton Patches: gcc-10 fix patch from community patch wine-fix-gcc10.mypatch Wine branch: 8.19 defined by _plain_version="wine-8.19" Error:

  dlls/win32u/x86_64-windows/libwin32u.a dlls/winecrt0/x86_64-windows/libwinecrt0.a \
  dlls/ucrtbase/x86_64-windows/libucrtbase.a dlls/kernel32/x86_64-windows/libkernel32.a \
  dlls/ntdll/x86_64-windows/libntdll.a -Wl,-O1,--sort-common,--as-needed
tools/winegcc/winegcc -o dlls/d3d12core/x86_64-windows/d3d12core.dll --wine-objdir . -b x86_64-w64-mingw32 -Wl,--wine-builtin -shared \
  ../wine-git/dlls/d3d12core/d3d12core.spec dlls/winecrt0/x86_64-windows/libwinecrt0.a \
  dlls/ucrtbase/x86_64-windows/libucrtbase.a dlls/kernel32/x86_64-windows/libkernel32.a \
  dlls/ntdll/x86_64-windows/libntdll.a -Wl,-O1,--sort-common,--as-needed
tools/winegcc/winegcc -o dlls/d3d8/x86_64-windows/d3d8.dll --wine-objdir . -b x86_64-w64-mingw32 -Wl,--wine-builtin -shared \
  ../wine-git/dlls/d3d8/d3d8.spec dlls/d3d8/x86_64-windows/buffer.o \
  dlls/d3d8/x86_64-windows/d3d8_main.o dlls/d3d8/x86_64-windows/device.o \
  dlls/d3d8/x86_64-windows/directx.o dlls/d3d8/x86_64-windows/shader.o \
  dlls/d3d8/x86_64-windows/surface.o dlls/d3d8/x86_64-windows/swapchain.o \
  dlls/d3d8/x86_64-windows/texture.o dlls/d3d8/x86_64-windows/vertexdeclaration.o \
  dlls/d3d8/x86_64-windows/volume.o dlls/d3d8/version.res libs/dxguid/x86_64-windows/libdxguid.a \
  libs/uuid/x86_64-windows/libuuid.a dlls/wined3d/x86_64-windows/libwined3d.a \
  dlls/winecrt0/x86_64-windows/libwinecrt0.a dlls/ucrtbase/x86_64-windows/libucrtbase.a \
  dlls/kernel32/x86_64-windows/libkernel32.a dlls/ntdll/x86_64-windows/libntdll.a -Wl,-O1,--sort-common,--as-needed
tools/winegcc/winegcc -o dlls/d3d8thk/x86_64-windows/d3d8thk.dll --wine-objdir . -b x86_64-w64-mingw32 -Wl,--wine-builtin -shared \
  ../wine-git/dlls/d3d8thk/d3d8thk.spec -Wb,--prefer-native dlls/d3d8thk/version.res \
  dlls/winecrt0/x86_64-windows/libwinecrt0.a dlls/ucrtbase/x86_64-windows/libucrtbase.a \
  dlls/kernel32/x86_64-windows/libkernel32.a dlls/ntdll/x86_64-windows/libntdll.a -Wl,-O1,--sort-common,--as-needed
/usr/bin/x86_64-w64-mingw32-ld: tmp654dfd7f/d3d12core-00000000.spec.o:fake:(.edata+0x28): undefined reference to `D3D12GetInterface'
collect2: error: ld returned 1 exit status
sudoBash418 commented 9 months ago

Same issue here with wine-staging, bisected to wine-staging commit wine-staging/wine-staging@aeddc191a7a21996ad8d2176247e850f3e3df798.

My guess is that patches need to be updated for the upstream makefile changes (wine-mirror/wine@acad49573a7846c0199ea3a8f1bd11c42d647ff4), but I'm not sure.

EliasTheGrandMasterOfMistakes commented 9 months ago

Same issue here with wine-staging, bisected to wine-staging commit wine-staging/wine-staging@aeddc19.

yes without staging is building, the cause of build error is the staging patch. but now i have a OpenVR build error kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk i will try to build without openvr

sudoBash418 commented 9 months ago

I was able to successfully build the latest commit (wine-staging/wine-staging@0c217b70480c912a5053c385c26993417a455b69) using a custom userpatch and a single change to the proton_battleeye patchset.

Patches which add *_SRCS variables to makefiles needed to be updated to use SOURCES instead.

Link to my patches: https://gist.github.com/sudoBash418/ae0e8c57f6b4db4678f3e380633e0dbc

Built with the following config options:

_LOCAL_PRESET="default-tkg"
_FS_bypass_compositor="true"
_proton_bcrypt="true"
Tk-Glitch commented 9 months ago

Fixed with https://github.com/Frogging-Family/wine-tkg-git/commit/f15448f371fc5ccbc872b21af399e7282371be28