Apparently no 3D acceleration in wine

After reading all this


I was finally encouraged to upgrade my system from 12.3 with i386-wine to 13.1 with wine. In order to test the procedure here described first, I installed a 13.1 test system in Virtualbox and it went all fine. I could even start a Kmquake2 game (which works fine as a test for wine), which is quite amazing, as I think you do not really get real hardware accelerated 3D in Virtualbox.
But after upgrading my system to 13.1 and also installing wine successfully there, it turns out that no game runs. They all report that there is no DirectX and Kmquake2 reports that it does not find any OpenGL renderer. And THAT seems to be the problem. I have an Nvidia Card, which runs with nvidia-driver-470. I remember that in the past, when installing i386-wine, a script (nvidia.sh?) was automatically triggered which installed some stuff for nvidia card users. It could also be started manually, I think it was in /usr/local/share/wine, but that script does not exist anymore:

Code:
$ ls /usr/local/share/wine/
fonts        mono        pkg32.sh
gecko        nls        wine.inf


Please help!
 
Please help!
I do not have Nvidia but maybe this explanation will help. Instead of i386-wine we now use that pkg32.sh script as seen in your post in /usr/local/share/wine. Try installing the 32-bit Nvidia driver for WINE by running the following (not as root): /usr/local/share/wine/pkg32.sh install nvidia-driver-470
 
Thanks, but no luck:

Code:
$ /usr/local/share/wine/pkg32.sh install nvidia-driver-470
pkg -o ABI=FreeBSD:13:i386 -o INSTALL_AS_USER=true -o RUN_SCRIPTS=false --rootdir /home/werner/.i386-wine-pkg install nvidia-driver-470
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
All repositories are up to date.
pkg: No packages available to install matching 'nvidia-driver-470' have been found in the repositories
$ /usr/local/share/wine/pkg32.sh install nvidia-driver
pkg -o ABI=FreeBSD:13:i386 -o INSTALL_AS_USER=true -o RUN_SCRIPTS=false --rootdir /home/werner/.i386-wine-pkg install nvidia-driver
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
All repositories are up to date.
pkg: No packages available to install matching 'nvidia-driver' have been found in the repositories
$
 
I do not have Nvidia but maybe this explanation will help. Instead of i386-wine we now use that pkg32.sh script as seen in your post in /usr/local/share/wine. Try installing the 32-bit Nvidia driver for WINE by running the following (not as root): /usr/local/share/wine/pkg32.sh install nvidia-driver-470

Nvidia already provides the lib32 compat portion.
 
/usr/local/share/wine/pkg32.sh install nvidia-driver-470
Provided this is correct, could my output not just mean that the nvidia-driver-470 package is not (yet) available in the i386 package repository where the script is trying to fetch it from?
 
Provided this is correct, could my output not just mean that the nvidia-driver-470 package is not (yet) available in the i386 package repository where the script is trying to fetch it from?
Yes you can see in the chart here. Alexander said the nvidia-driver-470 package already has multilib support so this is not the issue.
 
It could be helpful to post some logs.At first glance it seems to be an issue from your side since i have seen no issues from NVIDIA users on Discord regarding Wine. (Except that everything +=510.xx is not usable at this time of writing)
 
Yes you can see in the chart here. Alexander said the nvidia-driver-470 package already has multilib support so this is not the issue.
Right, it does say "ONLY_FOR_ARCHS: amd64". So now what???

It could be helpful to post some logs.At first glance it seems to be an issue from your side since i have seen no issues from NVIDIA users on Discord regarding Wine. (Except that everything +=510.xx is not usable at this time of writing)
How can it be an issue on my side if, as stated in the chart, like hunter0one said, nvidia-driver-470 is "ONLY_FOR_ARCHS: amd64"?
So what logs could I post?
So can we expect that nvidia-driver-470 will be ported to i386 anytime soon, or not? Otherwise I am screwed...
 
So can we expect that nvidia-driver-470 will be ported to i386 anytime soon, or not? Otherwise I am screwed...

The main stuff is amd64 but the i386 libraries for executing i386 stuff is in /usr/local/lib32.

So what logs could I post?

The logs of wine.

How can it be an issue on my side if, as stated.......]

As I said, other users have not complained, it could be that by the upgrade something was not properly cleaned up or something similar when you know what i mean. I also wonder how old your pkgs where when i386-wine gets only showed for FreeBSD 11.
 
The logs of wine.
Where are these logs, so I can post them?

The main stuff is amd64 but the i386 libraries for executing i386 stuff is in /usr/local/lib32.
This is what I have in that location, don't know if it helps:

Code:
$ ls /usr/local/lib32/
gcc11                libnvidia-cfg.so.1
libEGL_nvidia.so        libnvidia-eglcore.so
libEGL_nvidia.so.0        libnvidia-eglcore.so.1
libGLESv1_CM_nvidia.so        libnvidia-glcore.so
libGLESv1_CM_nvidia.so.1    libnvidia-glsi.so
libGLESv2_nvidia.so        libnvidia-glsi.so.1
libGLESv2_nvidia.so.2        libnvidia-glvkspirv.so
libGLX_nvidia.so        libnvidia-glvkspirv.so.1
libGLX_nvidia.so.0        libnvidia-tls.so
libnvidia-cfg.so        vdpau
$

As I said, other users have not complained, it could be that by the upgrade something was not properly cleaned up or something similar when you know what i mean. I also wonder how old your pkgs where when i386-wine gets only showed for FreeBSD 11.
Well, I have not upgraded in a long time, but i386-wine was there for 12.x as well until some months ago, I think?
Anyway, what you are saying and the contents of /usr/local/lib32 make me think of something:
As a result of the change in the nvidia-driver series, after the package upgrade I had to delete the nvidia-driver first and install nvidia-driver-470, which is now the one that supports my card. So could it be that the contents of /usr/local/lib32 are not the correct ones anymore? Is that even possible? How can I check?
 
So can we expect that nvidia-driver-470 will be ported to i386 anytime soon, or not?
NVidia stopped supporting i386 (32 bit) quite some time ago. The 390 driver was the last version that supported i386.


Well, I have not upgraded in a long time, but i386-wine was there for 12.x as well until some months ago, I think?
Ports have nothing to do with the FreeBSD version, all versions of FreeBSD use the same ports tree. This port was removed in November 2021.
 
Nvidia already provides the lib32 compat portion.
So I am asking again: If this is my content of /usr/local/lib32

Code:
$ ls /usr/local/lib32/
gcc11                libnvidia-cfg.so.1
libEGL_nvidia.so        libnvidia-eglcore.so
libEGL_nvidia.so.0        libnvidia-eglcore.so.1
libGLESv1_CM_nvidia.so        libnvidia-glcore.so
libGLESv1_CM_nvidia.so.1    libnvidia-glsi.so
libGLESv2_nvidia.so        libnvidia-glsi.so.1
libGLESv2_nvidia.so.2        libnvidia-glvkspirv.so
libGLX_nvidia.so        libnvidia-glvkspirv.so.1
libGLX_nvidia.so.0        libnvidia-tls.so
libnvidia-cfg.so        vdpau
,

what is wrong? This looks quite correct, does it not? So why does wine not find the OpenGL subsystem?
 
Back
Top