https://bugs.winehq.org/show_bug.cgi?id=44775
Bug ID: 44775 Summary: [winevulkan] Failed to open dynamic library Product: Wine Version: 3.4 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: winevulkan Assignee: wine-bugs@winehq.org Reporter: gillg02@hotmail.com Distribution: ---
Hi,
I have an issue with the new winevulkan. I created a winevulkan.json in c:/windows/ :
{ "file_format_version": "1.0.0", "ICD": { "library_path": "c:\windows\syswow64\winevulkan.dll", "api_version": "1.0.68" } }
I added registry keys for 32 & 64bits to use vulkan json file in drivers
I installed le last 1.0.x vulkan sdk (1.0.68.0 with winetricks)
I installed the last release of dxvk (0.31 from here https://github.com/doitsujin/dxvk/releases/)
--------------------------------------------------------------------------------
When I tried to run "c:/Program Files (x86)/VulkanRT/1.0.68.0/vulkaninfo.exe" I get an error :
0009:err:vulkan:wine_vk_init Failed to load Wine graphics driver supporting Vulkan. ERROR: [loader] Code 0 : Failed to open dynamic library "c:\windows\syswow64\winevulkan.dll" with error 1114 Cannot create Vulkan instance. C:\VulkanSDKBuild\workspace\LoaderAndValidationLayers\demos\vulkaninfo.c:808: failed with VK_ERROR_INCOMPATIBLE_DRIVER
But... When I run vunlkaninfo on my system (ubuntu 16.04 with package vulkan-utils) I get :
=========== VULKAN INFO ===========
Vulkan API Version: 1.0.61
INFO: [loader] Code 0 : Found ICD manifest file /usr/share/vulkan/icd.d/intel_icd.x86_64.json, version "1.0.0" INFO: [loader] Code 0 : Found ICD manifest file /usr/share/vulkan/icd.d/radeon_icd.x86_64.json, version "1.0.0"
Instance Extensions: ==================== Instance Extensions count = 9 VK_KHR_external_memory_capabilities : extension revision 1 VK_KHR_get_physical_device_properties2: extension revision 1 VK_KHR_get_surface_capabilities2 : extension revision 1 VK_KHR_surface : extension revision 25 VK_KHR_wayland_surface : extension revision 6 VK_KHR_xcb_surface : extension revision 6 VK_KHR_xlib_surface : extension revision 6 VK_KHR_external_semaphore_capabilities: extension revision 1 VK_EXT_debug_report : extension revision 8
Layers: count = 0 ======= Presentable Surfaces: ===================== GPU id : 0 (Intel(R) HD Graphics 520 (Skylake GT2)) Surface type : VK_KHR_xcb_surface Formats: count = 2 B8G8R8A8_SRGB B8G8R8A8_UNORM Present Modes: count = 3 IMMEDIATE_KHR MAILBOX_KHR FIFO_KHR
------------------------------------------------------------------------------
I don't know if it's a bug with winevulkan.dll or if something is wrong in my conf, but it seems stange...
https://bugs.winehq.org/show_bug.cgi?id=44775
--- Comment #1 from GG gillg02@hotmail.com --- Just a new detail, before use syswow64 library, I tried system32 lib, with the same error.
I used a 64bit prefix with wine 3.4 for my tests.
https://bugs.winehq.org/show_bug.cgi?id=44775
Wylda wylda@volny.cz changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |wylda@volny.cz
https://bugs.winehq.org/show_bug.cgi?id=44775
--- Comment #2 from GG gillg02@hotmail.com --- New informations again, I saw a strange thing.
file drive_c/windows/system32/winevulkan.dll: PE32+ executable (DLL) x86-64, for MS Windows file drive_c/windows/syswow64/winevulkan.dll: PE32 executable (DLL) Intel 80386, for MS Windows
Normal or not ? platforms seems inverted...
https://bugs.winehq.org/show_bug.cgi?id=44775
BieHDC byi5000@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |byi5000@gmail.com
--- Comment #3 from BieHDC byi5000@gmail.com --- In a 32-Bit environment, the 32-bit files go into system32
In a 64-bit environment, 64-bit files go into system32 and 32-bit files go into syswow64
Dont ask me why Microsoft made it that way...
And the Intel Driver is not supported for dxvk: https://github.com/doitsujin/dxvk/wiki/Driver-support
https://bugs.winehq.org/show_bug.cgi?id=44775
--- Comment #4 from GG gillg02@hotmail.com --- Thanks for your details about syswow64 ! Microsoft is wired...
But, maybe I'm wrong but "failed to open dynamic library", not seems have a link with dxvk driver compatibility. I ran vulkaninfo.exe, so dxvk is not used at this moment. I ran the same command on Ubuntu and everything is ok.
https://bugs.winehq.org/show_bug.cgi?id=44775
Trent McP twilightinzero@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |twilightinzero@gmail.com
https://bugs.winehq.org/show_bug.cgi?id=44775
--- Comment #5 from Trent McP twilightinzero@gmail.com --- I'm experiencing this too. I have an Optimus system; I get the same results regardless of whether I run this on the Intel, or on a PRIME X session. Should I upload my log?
https://bugs.winehq.org/show_bug.cgi?id=44775
--- Comment #6 from GG gillg02@hotmail.com --- I made some new tries with vulkan SDK 1.0.51 with same result
https://bugs.winehq.org/show_bug.cgi?id=44775
Józef Kucia joseph.kucia@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW CC| |joseph.kucia@gmail.com Ever confirmed|0 |1
--- Comment #7 from Józef Kucia joseph.kucia@gmail.com --- How do you install Wine? Do you build it yourself? Please attach a WINEDEBUG=+vulkan log.
https://bugs.winehq.org/show_bug.cgi?id=44775
Roderick Colenbrander thunderbird2k@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |thunderbird2k@gmail.com
--- Comment #8 from Roderick Colenbrander thunderbird2k@gmail.com --- A log is useful. Optimus kind of setups I'm a bit worried about, as Optimus is a set awful hacks. We are probably not ready for that.
Also really there is no need for syswow64 in winevulkan.json. On purpose my example shows to use c:\windows\system32\winevulkan.dll and a single json file. Window magic makes syswow64 look like system32 when in 32-bit mode and in 64-bit mode the system32 directory is system32. There is no need for 2 files or syswow64 as it is automatically handled.
https://bugs.winehq.org/show_bug.cgi?id=44775
Robert Walker bob.mt.wya@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |bob.mt.wya@gmail.com
https://bugs.winehq.org/show_bug.cgi?id=44775
--- Comment #9 from GG gillg02@hotmail.com --- Created attachment 60817 --> https://bugs.winehq.org/attachment.cgi?id=60817 vulkaninfo.exe +vulkan logs
To avoid compilation, I downloaded the last release over "PlayOnLinux". Release is here : https://www.playonlinux.com/wine/binaries/linux-amd64/PlayOnLinux-wine-3.4-l...
In fact I don't use directly PlayOnLinux, but big advantage, it's very simple to tests multiple wine version accross their "wine versions manager". Wine is installed here ~/.PlayOnLinux/wine/linux-amd64/3.4/bin/wine for example.
But if you think it's an error in their release... I can try to compile it myself or get the latest officialy compiled release somwhere ?
So, more log details :
~/.PlayOnLinux/wine/linux-amd64/3.4/bin/wine --version wine-3.4
See attached logs for :
$ WINEDEBUG=+vulkan WINEPREFIX=~/.PlayOnLinux/wineprefix/Test64 ~/.PlayOnLinux/wine/linux-amd64/3.4/bin/wine vulkaninfo.exe
https://bugs.winehq.org/show_bug.cgi?id=44775
--- Comment #10 from GG gillg02@hotmail.com --- I think wine installation is a good clue... winevulkan.dll exists, but I found their compilation logs : https://www.playonlinux.com/wine/logs/linux-amd64/wine-3.4-linux-amd64.log
We could see somewhere the end of ./configure
[...] config.status: executing include/stamp-h commands config.status: executing Makefile commands
configure: OpenCL 32-bit development files not found, OpenCL won't be supported. configure: pcap 32-bit development files not found, wpcap won't be supported. configure: libpulse 32-bit development files not found or too old, Pulse won't be supported. configure: gstreamer-1.0 base plugins 32-bit development files not found, GStreamer won't be supported. configure: libudev 32-bit development files not found, plug and play won't be supported. configure: libSDL2 32-bit development files not found, SDL2 won't be supported. configure: libvulkan 32-bit development files not found, Vulkan won't be supported.
configure: Finished. Do 'make' to compile Wine.
So libvulkan seems not present on compilation plateform... I guess is the problem ?
Any advice to get a "compiled" version of wine 3.4 x64 or I have to install all libs/headers and compile myself ? Any issue if I use an LXC to compile instead of my master system ?
https://bugs.winehq.org/show_bug.cgi?id=44775
--- Comment #11 from Trent McP twilightinzero@gmail.com --- (In reply to GG from comment #10)
Any advice to get a "compiled" version of wine 3.4 x64 or I have to install all libs/headers and compile myself ? Any issue if I use an LXC to compile instead of my master system ?
I actually have tried multiple pre-built versions: 3.4, staging-3.4, and vulkan-3.3 all from the Lutris repo (I don't use Lutris itself, just its builds), as well as the WineHQ PPA. What's your distro? Even if you're not Debian/Ubuntu, you can just pull the wine-devel folder out of the .deb file and throw it somewhere since it just installs it in /opt.
That said, I think it hard to believe that every single one of these pre-built versions--even the official PPA--would exclude vulkan support. I don't know if Lutris makes build logs available. Which file would I ldd to see if it tries to load Vulkan?
(In reply to Roderick from comment #8)
A log is useful. Optimus kind of setups I'm a bit worried about, as Optimus is a set awful hacks. We are probably not ready for that.
I'm glad to hear from the man himself! Okay, so on my setup personally, when I start up my Prime X, I automatically set VK_ICD_FILENAMES to the location of nvidia_icd.json on my system. Dolphin's Vulkan backend works with this and gives me great performance. I don't do anything with that env var when I want to use Intel.
I'll get the logs for the Intel run and also make you logs for the Prime X run, but I feel like they were mostly identical.
https://bugs.winehq.org/show_bug.cgi?id=44775
--- Comment #12 from Trent McP twilightinzero@gmail.com --- Okay, so as I went to attach my logs, I noticed that my runs on staging-3.4, 3.4, and vulkan-3.3 all from Lutris's builds were all much bigger than my original intel log and the nvidia log from the PPA. I looked in there and it was generating correct output on both my Intel and Nvidia cards!
So why was it suddenly working for me? I remember that two thing I was missing were libvulkan1:i386 and mesa-vulkan-drivers:i386. I remember installing them, but not restarting my X server for intel tests. I started up my laptop anew and suddenly everything was working on Lutris's builds. That brings me one step closer to Tekken 7!
That said, the PPA still does not work! I'll attach the output from Nvidia with the PPA build. Maybe the PPA doesn't build with Vulkan.
https://bugs.winehq.org/show_bug.cgi?id=44775
--- Comment #13 from Trent McP twilightinzero@gmail.com --- Created attachment 60818 --> https://bugs.winehq.org/attachment.cgi?id=60818 vulkaninfo.exe in Prime X, VK_ICD_FILENAMES set, PPA 3.4
https://bugs.winehq.org/show_bug.cgi?id=44775
--- Comment #14 from Roderick Colenbrander thunderbird2k@gmail.com --- (In reply to GG from comment #10)
I think wine installation is a good clue... winevulkan.dll exists, but I found their compilation logs : https://www.playonlinux.com/wine/logs/linux-amd64/wine-3.4-linux-amd64.log
We could see somewhere the end of ./configure
[...] config.status: executing include/stamp-h commands config.status: executing Makefile commands
configure: OpenCL 32-bit development files not found, OpenCL won't be supported. configure: pcap 32-bit development files not found, wpcap won't be supported. configure: libpulse 32-bit development files not found or too old, Pulse won't be supported. configure: gstreamer-1.0 base plugins 32-bit development files not found, GStreamer won't be supported. configure: libudev 32-bit development files not found, plug and play won't be supported. configure: libSDL2 32-bit development files not found, SDL2 won't be supported. configure: libvulkan 32-bit development files not found, Vulkan won't be supported.
configure: Finished. Do 'make' to compile Wine.
So libvulkan seems not present on compilation plateform... I guess is the problem ?
Any advice to get a "compiled" version of wine 3.4 x64 or I have to install all libs/headers and compile myself ? Any issue if I use an LXC to compile instead of my master system ?
You need to make sure you have both a 32-bit and 64-bit libvulkan.so.1 installed. You are missing the 32-bit vulkan lib, which is needed during compilation.
https://bugs.winehq.org/show_bug.cgi?id=44775
peter-24@o2.pl changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |peter-24@o2.pl
--- Comment #15 from peter-24@o2.pl --- i have the same problem with winevulkan. wine 3.4 installed from official repository. Vulkaninfo:
=========== VULKAN INFO ===========
Vulkan API Version: 1.0.65
ERROR: [loader] Code 0 : Failed to open dynamic library "c:\windows\system32\winevulkan.dll" with error 1114 Cannot create Vulkan instance. C:\VulkanSDKBuild\workspace\LoaderAndValidationLayers\demos\vulkaninfo.c:703: failed with VK_ERROR_INCOMPATIBLE_DRIVER
https://bugs.winehq.org/show_bug.cgi?id=44775
Józef Kucia joseph.kucia@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|[winevulkan] Failed to open |Wine packages are built |dynamic library |without Vulkan support
https://bugs.winehq.org/show_bug.cgi?id=44775
stephane.nicaise@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |stephane.nicaise@gmail.com
https://bugs.winehq.org/show_bug.cgi?id=44775
--- Comment #16 from GG gillg02@hotmail.com --- So, finally very good news ! I compiled last wine version myself and everything works correctly with vulkan !
Just... It's a bit tricky to avoid lot of dependency issues with libxxxx-dev for amd64 and i386. But finally it's done.
So, my advice, you have to avoid pre builded release if you have not access to proof of compilation with logs.
Just a last question... I couldn't add libhal-dev on Ubuntu xenial. Someone know a trick ? Everything is supported on my wine build except HAL.
https://bugs.winehq.org/show_bug.cgi?id=44775
tokktokk fdsfgs@krutt.org changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |fdsfgs@krutt.org
https://bugs.winehq.org/show_bug.cgi?id=44775
--- Comment #17 from Rosanne DiMesio dimesio@earthlink.net --- If this issue is about the WineHQ packages, then the Product should be Packaging. However, I don't see any indication in this bug report that the WineHQ packages are being built without vulkan support. What I see are users who are either missing dependencies or who have used packages from elsewhere (POL, Lutris).
Problems with packages built elsewhere should be reported to whoever built those packages, not here. Problems caused by missing dependencies are not bugs.
So, is anyone here claiming that the packages on https://dl.winehq.org are built without vulkan support?
https://bugs.winehq.org/show_bug.cgi?id=44775
--- Comment #18 from stephane.nicaise@gmail.com --- I do.
I couldn't run anything Vulkan related with the binary package under ubuntu, while my system is correctly configured to do it.
So I compiled wine myself (the latest git version actually), and it now runs perfectly.
So I assume it's because the package is built without vulkan support.
https://bugs.winehq.org/show_bug.cgi?id=44775
--- Comment #19 from Robert Walker bob.mt.wya@gmail.com ---
From my Ubuntu Mate install, with the winehq-devel 3.4.0~artful package:
find /opt/ -name "winevulkan*"
/opt/wine-devel/lib64/wine/fakedlls/winevulkan.dll /opt/wine-devel/lib64/wine/winevulkan.dll.so /opt/wine-devel/lib/wine/fakedlls/winevulkan.dll /opt/wine-devel/lib/wine/winevulkan.dll.so
So the package was definitely built with the --with-vulkan configure option enabled and the development libraries installed.
https://bugs.winehq.org/show_bug.cgi?id=44775
--- Comment #20 from Józef Kucia joseph.kucia@gmail.com --- (In reply to Robert Walker from comment #19)
/opt/wine-devel/lib64/wine/fakedlls/winevulkan.dll /opt/wine-devel/lib64/wine/winevulkan.dll.so /opt/wine-devel/lib/wine/fakedlls/winevulkan.dll /opt/wine-devel/lib/wine/winevulkan.dll.so
So the package was definitely built with the --with-vulkan configure option enabled and the development libraries installed.
winevulkan.dll is built even with the --without-vulkan option
https://bugs.winehq.org/show_bug.cgi?id=44775
--- Comment #21 from Ptr peter-24@o2.pl --- I have a question. Does winevulkan.dll.so uses SDL2 ? On my ubuntu 17.10 built in sdl comes without vulkan compiled in.
https://bugs.winehq.org/show_bug.cgi?id=44775
Rosanne DiMesio dimesio@earthlink.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |michael@fds-team.de, | |sebastian@fds-team.de Product|Wine |Packaging Version|3.4 |unspecified Component|winevulkan |wine-packages Summary|Wine packages are built |WineHQ packages are built |without Vulkan support |without Vulkan support
--- Comment #22 from Rosanne DiMesio dimesio@earthlink.net --- Based on the last few comments, changing component to Packaging.
https://bugs.winehq.org/show_bug.cgi?id=44775
Rosanne DiMesio dimesio@earthlink.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |leslie_alistair@hotmail.com
https://bugs.winehq.org/show_bug.cgi?id=44775
--- Comment #23 from Stéphane Nicaise stephane.nicaise@gmail.com --- I tested the latest packaged version (Ubuntu Wine 3.6) from the repository, and vulkan now works.
https://bugs.winehq.org/show_bug.cgi?id=44775
facePlanted morbidus@rx900.org changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |morbidus@rx900.org
--- Comment #24 from facePlanted morbidus@rx900.org --- It appears that Debian 8 Jessie packages are still affected by the bug, please check this thread: https://forum.winehq.org/viewtopic.php?f=8&t=30592 or in short:
WINEPREFIX="$HOME/.dxvk" wine wineboot WINEPREFIX="$HOME/.dxvk" wine /home/user/Downloads/vulkan_test.exe
000b:fixme:winediag:start_process Wine Staging 3.7 is a testing version containing experimental patches. 000b:fixme:winediag:start_process Please mention your exact version when filing bug reports on winehq.org. 0030:err:vulkan:get_vulkan_driver Wine was built without Vulkan support. 0030:err:vulkan:wine_vk_init Failed to load Wine graphics driver supporting Vulkan.
Thank you.
https://bugs.winehq.org/show_bug.cgi?id=44775
--- Comment #25 from facePlanted morbidus@rx900.org --- Tested with 3.8, official packages for Debian 8 (jessie), still the same:
WINEPREFIX="$HOME/.dxvk" wine wineboot (...) WINEPREFIX="$HOME/.dxvk" wine /home/user/Downloads/vulkan_test.exe 000b:fixme:winediag:start_process Wine Staging 3.8 is a testing version containing experimental patches. 000b:fixme:winediag:start_process Please mention your exact version when filing bug reports on winehq.org. 0031:err:vulkan:get_vulkan_driver Wine was built without Vulkan support. 0031:err:vulkan:wine_vk_init Failed to load Wine graphics driver supporting Vulkan.
(Vulkan drivers not installed)
https://bugs.winehq.org/show_bug.cgi?id=44775
--- Comment #26 from facePlanted morbidus@rx900.org --- Tested with 3.9, official packages for Debian 8 (jessie), same
https://bugs.winehq.org/show_bug.cgi?id=44775
--- Comment #27 from facePlanted morbidus@rx900.org --- Tested with 3.10.0, official packages for Debian 8 (jessie), same
https://bugs.winehq.org/show_bug.cgi?id=44775
--- Comment #28 from Roderick Colenbrander thunderbird2k@gmail.com --- On Debian the issue is not really fixable without hacks like introduced in wine-staging for 3.10. The problem is that Debian jesse doesn't provide a libvulkan package except in its backports, which not everyone has. In other words it is not possible to build Wine with Vulkan support.
https://bugs.winehq.org/show_bug.cgi?id=44775
--- Comment #29 from facePlanted morbidus@rx900.org --- (In reply to Roderick Colenbrander from comment #28)
On Debian the issue is not really fixable without hacks like introduced in wine-staging for 3.10. The problem is that Debian jesse doesn't provide a libvulkan package except in its backports, which not everyone has. In other words it is not possible to build Wine with Vulkan support.
Can you make two packages for Debian 8, one with Vulkan and one without ? Or .. is it possible to have a scripted compilation ? I've never compiled wine and for what I read, it's half a nightmare. Perhaps a step-by-step guide ?
https://bugs.winehq.org/show_bug.cgi?id=44775
Trent McP twilightinzero@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC|twilightinzero@gmail.com |
https://bugs.winehq.org/show_bug.cgi?id=44775
Zebediah Figura z.figura12@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |zambien1977@yahoo.com
--- Comment #30 from Zebediah Figura z.figura12@gmail.com --- *** Bug 45682 has been marked as a duplicate of this bug. ***
https://bugs.winehq.org/show_bug.cgi?id=44775
Rosanne DiMesio dimesio@earthlink.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |FIXED Status|NEW |RESOLVED
--- Comment #31 from Rosanne DiMesio dimesio@earthlink.net --- All of the OBS packages that can be built with vulkan support, are.
The two that can't are Ubuntu 14.04 and Debian 8, because neither provides libvulkan-dev packages in their main or update repositories. Jessie-backports is not available on the OBS.
Both distros are going to go EOL in a few months and Wine packaging discontinued. I could wait until then to close this, but that would be pointless. This bug is as fixed as it is ever going to be.
https://bugs.winehq.org/show_bug.cgi?id=44775
Rosanne DiMesio dimesio@earthlink.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #32 from Rosanne DiMesio dimesio@earthlink.net --- Closing fixed packaging bug.