# Apparently no 3D acceleration in wine



## cabriofahrer (Sep 30, 2022)

After reading all this









						Solved - WINE on FreeBSD 13 - Am I Just Wasting My Time?
					

Well, since I am about to embark on this same adventure, I thank all of you for the information posted here. I am wondering if there might be an even more-informative thread here somewhere...like a "How to WINE FreeBSD 13.1-RELEASE" or similar?  I, too, have tried to follow the Handbook in this...




					forums.freebsd.org
				




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:


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

Please help!


----------



## hunter0one (Sep 30, 2022)

cabriofahrer said:


> 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`


----------



## cabriofahrer (Oct 1, 2022)

Thanks, but no luck:


```
$ /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
$
```


----------



## Alexander88207 (Oct 1, 2022)

hunter0one said:


> 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.


----------



## hunter0one (Oct 1, 2022)

Alexander88207 said:


> Nvidia already provides the lib32 compat portion.


Thats equivalent to mesa-dri, right? I am not sure of a solution then unfortunately.


----------



## cabriofahrer (Oct 1, 2022)

hunter0one said:


> /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?


----------



## hunter0one (Oct 1, 2022)

cabriofahrer said:


> 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.


----------



## Alexander88207 (Oct 1, 2022)

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)


----------



## cabriofahrer (Oct 2, 2022)

hunter0one said:


> 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???



Alexander88207 said:


> 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...


----------



## Alexander88207 (Oct 2, 2022)

cabriofahrer said:


> 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.



cabriofahrer said:


> So what logs could I post?



The logs of wine.



cabriofahrer said:


> 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.


----------



## cabriofahrer (Oct 2, 2022)

Alexander88207 said:


> The logs of wine.


Where are these logs, so I can post them?



Alexander88207 said:


> 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:


```
$ 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
$
```



Alexander88207 said:


> 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?


----------



## Alexander88207 (Oct 2, 2022)

cabriofahrer said:


> Where are these logs, so I can post them?



Thats usually the output that you get when you run something with wine. You can do a screenshot or copy it over.


----------



## cabriofahrer (Oct 2, 2022)

Alexander88207 said:


> Alexander88207 said:
> 
> 
> > Thats usually the output that you get when you run something with wine. You can do a screenshot or copy it over.
> ...


----------



## SirDice (Oct 5, 2022)

cabriofahrer said:


> 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. 






						Support Plan for 32-bit and 64-bit Operating Systems | NVIDIA
					






					nvidia.custhelp.com
				






cabriofahrer said:


> 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. 





						ports - FreeBSD ports tree
					






					cgit.freebsd.org


----------



## cabriofahrer (Oct 6, 2022)

Alexander88207 said:


> Nvidia already provides the lib32 compat portion.


So I am asking again: If this is my content of /usr/local/lib32


```
$ 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?


----------

